06-記錄網路請求Request failed: unacceptable content-type: text/plain(AFNetworking)
在使用AFN時報錯:
Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/plain" UserInfo={com.alamofire.serialization.response.error.response= { URL: https://xxxxxxxxxxxxxxxxx } { status code: 200, headers {"Cache-Control" = "no-cache";"Content-Length" = 117;"Content-Type" = "text/plain;charset=UTF-8";Date = "Fri, 05 Feb 2016 11:22:23 GMT";Expires = "Thu, 01 Jan 1970 00:00:00 GMT";Pragma = "No-cache";Server = "nginx/1.6.1";"api-server-ip" = "10.75.2.83";} }
報錯的原因大概是:text/plain是一種不可接收的型別
問題分析:
以HTTP協議為例:客戶端向伺服器傳送請求的時候包括請求頭和請求體請求體就是我們一般說的請求引數,伺服器收到請求後就會響應請求,伺服器反饋回來的響應也包括響應頭和響應體。響應體就是我們說的反饋回來的資料,響應頭就是反饋回來響應體的內容的型別,也就說客戶端收到響應後,第一時間是處理響應頭,在處理響應體。而(AFNetworking)幫我們處理響應頭的時候,不能解析資料型別,也就是AFNetworking能處理的content-type沒有text/plain型別,所以AFNetworking就報錯。
解決辦法:
找到AFNetworking中的AFURLResponseSerialization.m檔案
-(instancetype)init {
self = [super init];
if (!self) {
return nil;
}
self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", nil];
return self;
}
在self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", nil];中加入@"text/plain"變成
self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/plain", nil];
相關文章
- ios Request failed: unacceptable content-type: text/html"iOSAIHTML
- 使用AFNetworking 2.0 請求資料時出現錯誤 Request failed: unacceptable content-type: text/html 解決方法AIHTML
- 用Fundebug外掛記錄網路請求異常
- Swift 中的網路請求問題 OC(AFNetworking) && Swift(Alamofire)Swift
- Swoft 學習筆記之 request 請求筆記
- iOS開發·網路請求大總結(NSURLConnection,NSURLSession,AFNetworking)iOSSession
- text/html和text/plain的區別HTMLAI
- volley建立標準的網路請求(Making a Standard Request)
- Android網路請求(終) 網路請求框架RetrofitAndroid框架
- Android網路請求(3) 網路請求框架OkHttpAndroid框架HTTP
- Volley傳送簡單的網路請求(Sending a Simple Request)
- Android網路請求(4) 網路請求框架VolleyAndroid框架
- Sanic request 請求資料
- 檢視AFnetworking網路請求時伺服器返回的頭部資訊伺服器
- 網路請求了
- 網路請求優化之取消請求優化
- Flutter 高效自學筆記(三)——網路請求Flutter筆記
- Volley實現自定義的網路請求Implementing a Custom Request
- urllib.request.Request物件封裝請求物件封裝
- AFNetworking3.0 HTTPS請求HTTP
- text/plain的作用是什麼AI
- Laravel 是如何請求 Request 的Laravel
- 確認請求(confirm,request)
- Charles 修改請求(Request)引數
- HTTP請求頭的Content-Type欄位HTTP
- 請求協議中的content-type頭協議
- HTTP網路請求原理HTTP
- iOS原生網路請求iOS
- 網路請求圖片
- 網路請求LCNetwork
- 網路資料請求
- nginx: 400 Bad Request | The plain HTTP request was sent to HTTPS portNginxAIHTTP
- AFNetworking的請求頭設定(token)
- Android okHttp網路請求之Get/Post請求AndroidHTTP
- 微信小程式 request請求封裝微信小程式封裝
- request和response——請求響應物件物件
- 400 Bad Request(錯誤請求)
- 華山論劍之淺談iOS網路請求終結者 網路狀況監控終結者 AFNetworkingiOS