iOS AFN网络请求 服务器nginx框架遇到的问题

1、网络请求request content-type 设置问题

   一般服务器设置为 application/json 或 text/json     AFN请求若使用 AFHTTPRequestOperationManager  底层会自动加上content-type,但不保险,有时还是需要手动设置一遍:

[rom.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];

 

2、response 的content-type 设置

 rom.responseSerializer.acceptableContentTypes=[NSSet setWithObjects:@"application/json",@"text/json",@"text/html",@"application/x-www-form-urlencoded",@"text/javascript", nil];

 

设置多少项,看你需求

 

3、网络交互使用json object问题,一般表现为服务器得不到请求参数或客户端得不到response

  报错为:

 error:Error Domain=com.alamofire.error.serialization.response Code=-1011 “Request failed: unacceptable (406)

 

 

 

   一般AFN使用的request和response序列类型为  

AFHTTPResponseSerializer   和  AFHTTPRequestSerializer

 但是也要看服务器的框架,有些是直接封装使用jsonobject交互,所以改为

 rom.responseSerializer = [AFJSONResponseSerializer serializer];

        rom.requestSerializer=[AFJSONRequestSerializer serializer];

 

   补充:request success返回的id responseObject  就是  object一般为 NSDictionary

 

 

 

 

posted @ 2016-06-12 15:21  Qiang zi  阅读(732)  评论(0编辑  收藏  举报