工做中遇到先後臺交互,前端解析不了後端返回的數據格式 ,緣由在於沒有標準統一的請求格式前端
這是個坑,可是仍是有辦法修復json
錯誤提示:
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.}
後端
解讀: 就是服務器返回的格式 你封裝的方法解析不了這個數據類型,返回的數據類型不是json array或array,多是一個沒有鍵值的數據流或者是字符串服務器
若是你的代碼是這樣debug
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];ip
manager.requestSerializer = [AFJSONRequestSerializer serializer];字符串
manager.responseSerializer = [AFJSONResponseSerializer serializer];it
修改代碼部分io
則須要修改後臺
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
就是後臺返回格式不是標準的json格式,能夠debug看返回類型 進行判斷回調