搜尋

首頁  >  問答  >  主體

ios - AFNetworking 错误信息:NSCocoaErrorDomain Code=3840

App 使用很久了,昨天出现一个bug,网络请求总失败。调试打印,发现是这样的错误:


AFHTTPRequestOperation *operation = [manager POST:URLString parameters:param success:^(AFHTTPRequestOperation *operation, id responseObject) {
    if (successBlock) {
        successBlock(responseObject);
    }
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    if (failureBlock) {
        failureBlock(error);
    }
    NSLog(@"%@", error);
}];

Error Domain=NSCocoaErrorDomain Code=3840 "JSON text did not start with array or object and option to allow fragments not set." UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set., NSUnderlyingError=0x15eb52e0 {Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad gateway (502)" UserInfo={com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x15d4c7d0> { URL: http://xxx.com } { status code: 502, headers { Connection = "keep-alive"; "Content-Length" = 173; "Content-Type" = "text/html"; Date = "Mon, 01 Feb 2016 03:35:51 GMT"; Server = "nginx/1.5.12"; } }, NSErrorFailingURLKey=http://xxx.com, NSLocalizedDescription=Request failed: bad gateway (502)

有大神遇到过吗?App 使用很久了,头一次出现这样的 bug, 因此可以排除 manager 的配置问题。

天蓬老师天蓬老师2772 天前912

全部回覆(4)我來回復

  • 天蓬老师

    天蓬老师2017-04-17 17:33:26

    伺服器回傳資料不是json格式的,讓後端調一下就成,這是最常見的錯誤了。

    回覆
    0
  • 大家讲道理

    大家讲道理2017-04-17 17:33:26

    出現這種情況,最常見的是接口添加了打印信息,或者接口抱錯,導致請求所返回的數據不是合法的JSON而報錯

    回覆
    0
  • 迷茫

    迷茫2017-04-17 17:33:26

    一樓正解,這個問題以前老是遇到過,就是介面回傳的資料非標準json格式,有可能是換行符或其他符號導致的。

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 17:33:26

    @Aster0id , @標哥 , @那愛離殤 ,確實是伺服器的原因。謝了。

    回覆
    0
  • 取消回覆