专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 网络通信

AFNetWorking与此同时解析MsgPack和JSON等多种返回数据

发布时间:2011-07-03 06:58:27 文章来源:www.iduyao.cn 采编人员:星星草
AFNetWorking同时解析MsgPack和JSON等多种返回数据

最近项目遇到一种情况就是,为了减少流量,服务器的正确返回数据会用MsgPack格式进行返回,而错误数据或者网络错误则会以JSON数据格式返回.

首先标准的AFNetWorking是不能解析MsgPack数据格式的,需要加入相应的三方库, 而AFNetWorking的大牛作者为我们提供了两个库,可以很方便的加入进来:

如果用CocoaPod管理三方库, 在Podfile中加入以下两行,这样两个库就加入到工程中了:

pod 'AFMsgPackSerialization', '~> 0.0.1'
pod 'MsgPackSerialization', '~> 0.0.1'
如果手动管理,则需要下载这两个库放入工程中.

第二步就是要根据返回的格式动态解析

AFHTTPRequestOperationManagerresponseSerializeracceptableContentTypes进行设置

我自定义了一个Manager的子类进行数据请求和解析,所以代码如下:

//根据返回类型解析数据
        self.responseSerializer = [AFCompoundResponseSerializer compoundSerializerWithResponseSerializers:@[[AFMsgPackResponseSerializer serializer],[AFJSONRequestSerializer serializer]]];
        self.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/x-msgpack", @"application/json", nil];


顺利达到要求, 不管什么格式返回,都能解析和显示了.

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: