偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

iOS開發(fā)ASIHTTPRequest其他特性

移動開發(fā) iOS
本文為大家介紹了iOS開發(fā)ASIHTTPRequest其他特性的內(nèi)容,其中包括設(shè)置user agent,當(dāng)程序進(jìn)入后臺運行時,繼續(xù)執(zhí)行request(iOS),監(jiān)視網(wǎng)絡(luò)活動,禁用自動更新網(wǎng)絡(luò)連接標(biāo)示符狀態(tài)(iOS),超時自動重試,設(shè)置持久連接,強制使用HTTP 1.0,禁用安全證書校驗等等內(nèi)容。

設(shè)置user agent

這樣設(shè)置用戶代理:

  1. [ASIHTTPRequest setDefaultUserAgentString:@"MyApp 1.0"]; 

如果不設(shè)置user agent,ASIHTTPRequest會為你創(chuàng)建一個。例如(Mac OS程序):

My Application 1.0 (Macintosh; Mac OS X 10.5.7; en_GB)

你也可以為每個request設(shè)置user agent:

  1. [request setUserAgent:@"MyApp 1.0"]; 

當(dāng)程序進(jìn)入后臺運行時,繼續(xù)執(zhí)行request(iOS)

  1. // iOS 4以上 
  2. [request setShouldContinueWhenAppEntersBackground:YES]; 

監(jiān)視網(wǎng)絡(luò)活動

  1. //記錄過去5秒的平均流量字節(jié)/秒 
  2. NSLog(@"%llu",[ASIHTTPRequest averageBandwidthUsedPerSecond]); 
  3.   
  4. if ([ASIHTTPRequest isNetworkInUse]) { 
  5.     // ASIHTTPRequest 進(jìn)程中有requests正在使用網(wǎng)絡(luò) 

禁用自動更新網(wǎng)絡(luò)連接標(biāo)示符狀態(tài)(iOS)

默認(rèn)情況下,ASIHTTPRequest在request使用網(wǎng)絡(luò)連接時,會自動顯示網(wǎng)絡(luò)連接標(biāo)示符(iOS狀態(tài)條中)。如果你想自己控制標(biāo)示符,你可以禁用這個特性:

  1. [ASIHTTPRequest setShouldUpdateNetworkActivityIndicator:NO]; 

超時自動重試

設(shè)置超時自動重試最大次數(shù)為2:

  1. [request setNumberOfTimesToRetryOnTimeout:2]; 

設(shè)置持久連接

默認(rèn)情況下,ASIHTTPRequest將會嘗試保持對一個服務(wù)器的連接以便往后的連接到該服務(wù)器的request可以重用這個連接(這個特性可以顯著地提高速度,尤其是當(dāng)你會要進(jìn)行很多小數(shù)據(jù)量request時)。當(dāng)連接到HTTP 1.1服務(wù)器或者服務(wù)器發(fā)送keep-alive頭時,持久連接會自動被使用。當(dāng)服務(wù)器顯式地發(fā)送”Connection:close”頭時,持久連接就不會被使用。另外,默認(rèn)情況下,ASIHTTPRequest不會對包含請求體(例如POST/PUT)的request使用持久連接(從1.8.1版本開始)。通過設(shè)置request,你可以強制讓此類request使用持久連接:

  1. [request setRequestMethod:@"PUT"]; 
  2. [request setShouldAttemptPersistentConnection:YES]; 

很多服務(wù)器不會在響應(yīng)頭中規(guī)定持久連接的持久時間,它們可能會在任何一個request完成時候關(guān)閉連接。如果一個服務(wù)器沒有規(guī)定持久連接的持久時間,ASIHTTPRequest將會在一個request完成后,保持連接60秒。對于你的服務(wù)器設(shè)置來時,60可能很長,也可能很短。

如果這個超時時間太長,那么可能一個request使用這個連接時,服務(wù)器可能已經(jīng)關(guān)閉了這個連接。當(dāng)ASIHTTPRequest遇到連接已關(guān)閉錯誤,它就會在一個新的連接上重試這個request。

如果這個超時時間太短,而服務(wù)器卻更想讓這個連接保持更長時間,但是ASIHTTPRequest又開啟了不必要的新連接,那么這將導(dǎo)致效率降低。

  1. // 設(shè)置持久連接的超時時間為120秒 
  2. [request setPersistentConnectionTimeoutSeconds:120]; 
  3.   
  4. // 徹底禁用持久連接 
  5. [request setShouldAttemptPersistentConnection:NO]; 

強制使用HTTP 1.0

  1. [request setUseHTTPVersionOne:YES]; 

禁用安全證書校驗

如果你有一個自簽名的證書,你可能想禁用證書校驗來做測試。這里我建議你從一個可信的CA購買證書,并為生產(chǎn)(production)期的app(夢維:app還有測試期等等階段不是?)啟用證書校驗。

  1. [request setValidatesSecureCertificate:NO]; 
責(zé)任編輯:閆佳明 來源: dreamingwish
相關(guān)推薦

2013-07-21 18:22:59

iOS開發(fā)ASIHTTPRequ

2013-07-21 18:27:15

iOS開發(fā)ASIHTTPRequ

2013-07-21 18:18:00

iOS開發(fā)ASIHttpRequ

2013-07-22 14:15:17

iOS開發(fā)ASIHTTPRequ

2013-07-21 18:32:13

iOS開發(fā)ASIHTTPRequ

2013-07-22 14:33:15

iOS開發(fā)ASIHTTPRequ

2013-07-22 13:54:32

iOS開發(fā)ASIHTTPRequ

2013-07-22 14:43:57

iOS開發(fā)ASIHTTPRequ

2013-07-22 14:25:29

iOS開發(fā)ASIHTTPRequ

2013-07-21 18:09:21

iOS開發(fā)ASIHttpRequ創(chuàng)建和執(zhí)行reques

2013-07-22 14:02:17

iOS開發(fā)ASIHTTPRequ

2013-07-22 13:48:55

iOS開發(fā)ASIHTTPRequ使用Cookie

2013-07-22 14:29:35

iOS開發(fā)ASIHTTPRequ

2013-03-25 14:13:23

iOSASIHTTPRequ

2013-07-21 18:04:22

ASIHttpRequiOS開發(fā)

2011-08-22 10:06:38

IOS開發(fā)ASIHTTPRequHTTP 請求

2013-07-22 14:10:26

iOS開發(fā)ASIHTTPRequ

2011-08-10 17:37:00

iPhoneASIHTTPRequ

2013-07-19 13:16:26

iOS中BlockiOS開發(fā)學(xué)習(xí)內(nèi)存管理

2011-08-12 13:35:23

iPhone文件流ASIHTTPRequ
點贊
收藏

51CTO技術(shù)棧公眾號