iOS使用ASIHTTPRequest请求过来的数据中包含utf-8字符 ? 400 报错
在使用ASIHTTPRequest请求一个接口时,使用NLog打印出返回的Json串,发现有很少一部分汉字显示的是其UTF-8编码的样式,比如“考试”会显示为“考\350\257\225”,其中\350\257\225是“试”utf-8编码,而且没有规律,有些时候这个字显示不正常,有时候显示正常,Android上没有这种问题,在服务端打印出生成的JSON也是正常的,所以接口返回值应该没有问题。服务器返回头的编码是UTF-8,ASIHTTPRequest也设置了UTF8编码:
request.defaultResponseEncoding = NSUTF8StringEncoding;现在怀疑是 ASIHTTPRequest的问题,不知大家谁遇见过这样的问题,谢谢!
没有错误啊,打印的是那样 但真正显示出来就正常了
######大不了再自己转一次呗~######怎么转啊?求帮助######正常的..######回复
//转换代码
SBJsonWriter *jsonWriter = [[SBJsonWriter alloc] init];
NSString *jsonString = [jsonWriter stringWithObject:dict];
[jsonWriter release];
######哪位大神能帮我解决个问题 AISHttpRequest流传递。服务端是J2EE.后台报错。主要是因为:
DataInputStream in = new DataInputStream(request.getInputStream());
String sb = in.readUTF();
无法解析。求大神指教下!
@dreamlife_zhou 兄说正解,谢谢! 这个不是最终导致错误的原因,是接口有时会返回一段非Json的response,导致解析失败.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。