1、AFNetworking 報(bào)錯Request failed: unacceptable content-type: text/html"
解決:
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
//注意不是json
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"application/json"];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"];
2、AFNetworking 報(bào)錯:JSON text did not start with array or object and option to allow fragments not set
解決:
在AFNetworking中 上述代碼將會 輸出
Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn’t be completed. (Cocoa error 3840.)" (JSON text did not start with array or object and option to allow fragments not set.) UserInfo=0x8ea19a0 {NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.}
這是因?yàn)?AFNetworking默認(rèn)把響應(yīng)結(jié)果當(dāng)成json來處理,(默認(rèn)manager.responseSerializer = [AFJSONResponseSerializer serializer]) ,很顯然,我們請求的百度首頁 返回的并不是一個json文本,而是一個html網(wǎng)頁,但是AFNetworking并不知道,它堅(jiān)信請求的結(jié)果就是一個json文本!然后固執(zhí)地以json的形式去解析,顯然沒辦法把一個網(wǎng)頁解析成一個字典或者數(shù)組,所以產(chǎn)生了上述錯誤.
然而,我們期望它能夠正確地處理這個情形,而不是提示一個錯誤.
這時候 你必須告訴AFNetworking:別把這個網(wǎng)頁當(dāng)json來處理!
只需要在發(fā)送請求前加入:manager.responseSerializer = [AFHTTPResponseSerializer serializer]
代碼變成:
AFHTTPSessionManager *manager =[AFHTTPSessionManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
[manager GET:@"http://www.baidu.com" parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {
NSString *result = [[NSString alloc]initWithData:responseObject encoding:NSUTF8StringEncoding];
NSLog(@"%@",result);
} failure:^(NSURLSessionDataTask *task, NSError *error) {
NSLog(@"%@",error);
}];
iOS AFNetworking請求html數(shù)據(jù)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- Gift.ONE號稱是全球最大的加密貨幣空投組織,目前Gift Box中鎖定了BTC、ETH、EOS 等多種加密數(shù)...