AFNetworking之AFJSONRequestSerializer使用

 看了一点AFNetworking 的知识,不太懂该如何使用AFJSONRequestSerializer ,网上查了一下,分享一下.                             

        NSMutableDictionary *dic=[[NSMutableDictionary alloc]init]; 
    [dic setObject:@"apple" forKey:@"brand"];
NSString *url=@"http://xxxxx";//你的接口地址   
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 
    manager.requestSerializer=[AFJSONRequestSerializer serializer];//申明请求的数据是json类型 
    manager.responseSerializer = [AFJSONResponseSerializer serializer];//申明返回的结果是json类型 
    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"application/json"];//如果接受类型不一致请替换一致

[manager POST:urlStr
     parameters:dic
          success:^(AFHTTPRequestOperation *operation, id responseObject) {
        // write your code here
    }
           failure:^(AFHTTPRequestOperation *operation, NSError *error) {
             // write your code here   

    }];

常遇到下面的几种情况:
1、 服务端需要返回一段普通文本给客户端,Content-Type="text/plain"
2 、服务端需要返回一段HTML代码给客户端 ,Content-Type="text/html"
3 、服务端需要返回一段XML代码给客户端 ,Content-Type="text/xml"
4 、服务端需要返回一段javascript代码给客户端 Content-Type="text/javascript "
5 、服务端需要返回一段json串给客户端 Content-Type="application/json"

 我们主要讨论返回javascript代码和Json对象的情况。

javascript 的 contentType 按最标准的写法 应该是 application/javascript。而常用的 text/javascript 已经被 rfc定义为废弃的。

但是 在这里暂时不建议使用 application/javascript . 大家还是继续使用 text/javascript 为好. 因为很多老旧浏览器并不支持 application/javascript . 而所有浏览器都支持text/javascript. 在标准和广泛的兼容性之间 还是暂且选择后者吧。

json 的 contentType 常见写法有 : text/json & text/javascript .
但是 这个 text/json 其实是根本不存在的, 而 text/javascript 在有些时候客户端处理起来会有歧义. 对于json的contentType , rfc里定义的标准写法是 :application/json.


ios 中Content-Type 的类型还有:

plist :Content-Type  = "application/x-plist"


参考网址:http://lizhuang.iteye.com/blog/2043148

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值