AFNetworking에서 데이터를 요청하는 동안 code200에서 error 오류가 발생했습니다.

2012 단어
제가 봉인한 AF Networking 헤더에 types @ "text/html"을 추가했지만 계속 오류가 발생했습니다.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/plain"UserInfo={com.alamofire.serialization.response.error.response= { URL: http://172.16.0.104:85/Handlers/Phone/PhoneHandler.ashx?visit=GetPatrolRoom } { status code: 200, headers { "Cache-Control"= private; "Content-Length"= 343; "Content-Type"= "text/plain; charset=utf-8"; Date = "Thu, 20 Apr 2017 03:12:32 GMT"; Server = "Microsoft-IIS/7.5"; "X-AspNet-Version"= "4.0.30319"; "X-Powered-By"= "ASP.NET"; } }, NSErrorFailingURLKey
여기code200은 요청이 성공했다는 것을 설명합니다. 저는 백그라운드 동료에게도 그쪽에서 데이터를 얻고 돌아왔다고 표시했습니다. 하지만 그쪽에서 가져올 수 없습니다. 제 첫 번째 생각은 그쪽에서 저에게 전해 준 json 데이터 형식이 틀렸습니다. 그러나 이 인터페이스를 제외하고 앞의 18개의 인터페이스는 모두 정상입니다. 마지막 두 개의 인터페이스는 틀렸습니다.나는 바로 원래의 것을 써 보려고 생각했다. 나는 원래의 것을 써서 성공할 수 있었다
그런데 왜 이 AFN은 안 됩니까? 저는 이미 제가 쓴 분류에 유형 방법의 type 유형을 추가했습니다. 왜 아직도 잘못된 것입니까? 저는 여러 편의 문장에서 마침내 이것을 찾았습니다.
전역 검색 파일 AFURLResponseSerialization.m 파일 228줄은 이 AFNetworking에 요청 유형 self를 추가합니다.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/html", @"text/json", @"text/javascript", nil];
이를 위해, 나는 제3자의 AFN을pod에서 로컬을 불러오는 파일에서 삭제했다.
점심에 돌아와서 테스트를 했는데 이 인터페이스의 오류가 4개에서 1개로 바뀌었습니다 [0] (null) @ "NSDebugDescription"@ "JSON text did not start with array or object and option to allow fragments not set."
이 인터페이스에서 요청한 관리자에 코드 관리자를 추가합니다.responseSerializer = [AFHTTPResponseSerializer serializer];
가져온 매개변수는_NSInlineData 형식은 Json의 사전 형식으로 변경해야 합니다.
NSData * data = responseObject;
    NSDictionary * dict =[NSJSONSerialization JSONObjectWithData:data options:NSUTF8StringEncoding error:nil];

*********************************perfect*********************************
이상은 본인의 오리지널로 여러분께 도움이 되었으면 합니다.부족한 점은 바로잡아 주십시오!전재하려면 출처를 추가하십시오.

좋은 웹페이지 즐겨찾기