iOS - 發(fā)送請求NSURLSession

發(fā)送請求NSURLSession網(wǎng)絡請求會話

1、NSURLSessionDataTask數(shù)據(jù)類任務

? ? ? NSURLSessionUploadTask 上傳類任務

2、NSURLSessionDownloadTask下載類任務

發(fā)送請求的流程:

1、準備請求(NSURLRequest)

2、創(chuàng)建一個網(wǎng)絡請求會話(NSURLSession)

3、創(chuàng)建請求任務(NSURLSession-DataTask)

4、通過會話開啟任務(resume)


1、創(chuàng)建一個請求(NSURLRequest)

(1)URL

(2)創(chuàng)建一個請求對象(1、需要添加內(nèi)容到請求對象的時候NSMutableURLRequest

2、不需要添加內(nèi)容到請求對象的時候NSURLRequest)

NSURL*url = [NSURLURLWithString:@"http://apis.baidu.com/heweather/weather/free?city=zhengzhou"];

NSMutableURLRequest*request = [NSMutableURLRequestrequestWithURL:url];

//get、post都是發(fā)送一個內(nèi)容(參數(shù))到服務器端

//get:把要送的內(nèi)容拼接到URL字符串后面常用?隔開(1、把要發(fā)送的內(nèi)容暴露在URL的字符串中,不可以發(fā)送密碼隱私2、URL的字符串長度是有限制的(1kb)發(fā)送內(nèi)容過大不能使用)

//設置請求方式

[requsetsetHTTPMethod:@"get"];

//apikey請求頭

[requestaddValue:@"800df6eb77392d2205b55cfccbcc1662"forHTTPHeaderField:@"apikey"];

//2、創(chuàng)建NSURLSession會話

NSURLSession*session = [NSURLSessionsharedSession];

//3、創(chuàng)建一個請求的任務NSURLSessionDataTask

NSURLSessionDataTask *task = [session dataTaskWithRequest:request];

NSURLSessionDataTask*task = [sessiondataTaskWithRequest:requestcompletionHandler:^(NSData*_Nullabledata,NSURLResponse*_Nullableresponse,NSError*_Nullableerror) {

//data 服務器返回給咱們需要的內(nèi)容

//JOSN解析

NSDictionary*result =

[NSJSONSerializationJSONObjectWithData:dataoptions:NSJSONReadingMutableContainerserror:nil];

NSLog(@"==%@",response);

NSLog(@"%@",result);

}];

//4、開啟任務

[taskresume];

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容