今天在研究使用node开发代理处理app接口数据居然遇到了很多问题。经过一番折腾终于出结果了,也算不错。
最后快出结果时居然在AFNetworking解析方面出现问题,具体就记录一下。
代理实现了,可以实现数据转发。却发现ios端不能显示,查看数据源没问题。一步步调试追踪,定位到AFNetworking解析失败。最终定位到
- (BOOL)validateResponse:(NSHTTPURLResponse *)response
data:(NSData *)data
error:(NSError *__autoreleasing *)error
方法异常,出现error;继续查找是
[self.acceptableContentTypescontainsObject:[responseMIMEType]
条件不满足。也就是代理设置的头信息不对,代码中找到
也就是说AFNetworking可解析的头文件类型有三种:"application/json",@"text/json", @"text/javascript"找到原因就好解决,修改代理的setHeader
res.setHeader('Content-Type','application/json')
再次启动尝试,一切OK。