- 軟件大小:265KB
- 軟件語言:中文
- 軟件類型:國(guó)產(chǎn)軟件
- 軟件類別:免費(fèi)軟件 / 編程工具
- 更新時(shí)間:2017-10-09 14:15
- 運(yùn)行環(huán)境:WinAll, WinXP, Win7, Win8, Win10
- 軟件等級(jí):
- 軟件廠商:
- 官方網(wǎng)站:http://www.portlandswalk.com/
17.82M/英文/10.0
31.35M/多國(guó)語言[中文]/5.0
16.13M/多國(guó)語言[中文]/6.6
1.45M/中文/10.0
4.60M/中文/8.7
ASIHTTPRequest是一款非常好用的編程工具,功能強(qiáng)大,使用方便,程序員朋友們不要錯(cuò)過了,還等什么,快約上你的小伙伴,一起來綠色資源網(wǎng)下載使用!
使用iOS SDK中的HTTP網(wǎng)絡(luò)請(qǐng)求API,相當(dāng)?shù)膹?fù)雜,調(diào)用很繁瑣,ASIHTTPRequest就是一個(gè)對(duì)CFNetwork API進(jìn)行了封裝,并且使用起來非常簡(jiǎn)單的一套API,用Objective-C編寫,可以很好的應(yīng)用在Mac OS X系統(tǒng)和iOS平臺(tái)的應(yīng)用程序中。ASIHTTPRequest適用于基本的HTTP請(qǐng)求,和基于REST的服務(wù)之間的交互。
通過簡(jiǎn)單的接口,即可完成向服務(wù)端提交數(shù)據(jù)和從服務(wù)端獲取數(shù)據(jù)的工作
下載的數(shù)據(jù),可存儲(chǔ)到內(nèi)存中或直接存儲(chǔ)到磁盤中
能上傳本地文件到服務(wù)端
可以方便的訪問和操作請(qǐng)求和返回的Http頭信息
可以獲取到上傳或下載的進(jìn)度信息,為應(yīng)用程序提供更好的體驗(yàn)
支持上傳或下載隊(duì)列,并且可獲取隊(duì)列的進(jìn)度信息
支持基本、摘要和NTLM身份認(rèn)證,在同一會(huì)話中授權(quán)憑證會(huì)自動(dòng)維持,并且可以存儲(chǔ)在Keychain(Mac和iOS操作系統(tǒng)的密碼管理系統(tǒng))中
支持Cookie
當(dāng)應(yīng)用(iOS 4+)在后臺(tái)運(yùn)行時(shí),請(qǐng)求可以繼續(xù)運(yùn)行
支持GZIP壓縮數(shù)據(jù)
內(nèi)置的ASIDownloadCache類,可以緩存請(qǐng)求返回的數(shù)據(jù),這樣即使沒有網(wǎng)絡(luò)也可以返回已經(jīng)緩存的數(shù)據(jù)結(jié)果
ASIWebPageRequest –可以下載完整的網(wǎng)頁(yè),包括包含的網(wǎng)頁(yè)、樣式表、腳本等資源文件,并顯示在UIWebView /WebView中。任意大小的頁(yè)面都可以無限期緩存,這樣即使沒有網(wǎng)絡(luò)也可以離線瀏覽
支持客戶端證書
支持通過代理發(fā)起Http請(qǐng)求
支持帶寬限制。在iOS平臺(tái),可以根據(jù)當(dāng)前網(wǎng)絡(luò)情況來自動(dòng)決定是否限制帶寬,例如當(dāng)使用WWAN(GPRS/Edge/3G)網(wǎng)絡(luò)時(shí)限制,而當(dāng)使用WIFI時(shí)不做任何限制
支持?jǐn)帱c(diǎn)續(xù)傳
支持同步和異步請(qǐng)求
使用說明ASIHTTPRequest有很多功能,所有功能說明都可以在其官方網(wǎng)站的相關(guān)文檔中查到,限于篇幅,本章僅簡(jiǎn)單介紹一下如何使用ASIHTTPRequest來進(jìn)行同步Http請(qǐng)求和異步Http請(qǐng)求。在后面的章節(jié)中,我們還會(huì)用到它的一些其他功能。
在使用ASIHTTPRequest之前,請(qǐng)確認(rèn)已經(jīng)正確安裝,然后在需要應(yīng)用它的代碼文件頭部,加入:
#import ASIHTTPRequest.h
這樣就可以在代碼中使用ASIHTTPRequest相關(guān)的類。
創(chuàng)建一個(gè)同步請(qǐng)求
這是ASIHTTPRequest最簡(jiǎn)單的一種使用模式,發(fā)送startSynchronous消息后即開始在同一線程中執(zhí)行HTTP請(qǐng)求,線程將一直等待直到請(qǐng)求結(jié)束(請(qǐng)求成功或者失敗)。通過檢查error屬性可以判斷請(qǐng)求是否成功或者有錯(cuò)誤發(fā)生。
要獲取返回的文本信息,調(diào)用responseString方法。如果下載的是二進(jìn)制文件,例如圖片、MP3,則調(diào)用responseData方法,可以得到一個(gè)NSData對(duì)象。
- (IBAction)grabURL:(id)sender
{NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request startSynchronous];
NSError *error = [request error];
if (!error) {NSString *response = [request responseString];}}
一般情況下,應(yīng)該優(yōu)先使用異步請(qǐng)求代替同步請(qǐng)求,當(dāng)在主線程中使用ASIHTTPRequest同步請(qǐng)求,應(yīng)用程序的界面會(huì)鎖定,無法進(jìn)行任何操作,直到請(qǐng)求完成。
創(chuàng)建一個(gè)異步請(qǐng)求
上例中的同步請(qǐng)求,如果換成異步方式來調(diào)用,請(qǐng)求是在后臺(tái)線程中運(yùn)行,當(dāng)請(qǐng)求執(zhí)行完后再通知調(diào)用的線程。這樣不會(huì)導(dǎo)致主線程進(jìn)行網(wǎng)絡(luò)請(qǐng)求時(shí),界面被鎖定等情況。
- (IBAction)grabURLInBackground:(id)sender
{NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];}
- (void)requestFinished:(ASIHTTPRequest *)request
{// 當(dāng)以文本形式讀取返回內(nèi)容時(shí)用這個(gè)方法
NSString *responseString = [request responseString];
// 當(dāng)以二進(jìn)制形式讀取返回內(nèi)容時(shí)用這個(gè)方法
NSData *responseData = [request responseData];}
- (void)requestFailed:(ASIHTTPRequest *)request
{NSError *error = [request error];}。
請(qǐng)描述您所遇到的錯(cuò)誤,我們將盡快予以修正,謝謝!
*必填項(xiàng),請(qǐng)輸入內(nèi)容