我正在调用API并以西班牙语接收回复。在浏览器中它看起来没问题,但是当我在应用程序中调用它时,它会显示奇怪的字符。
例如,在浏览器中,我看到Automóvil
,但在应用中我看到Automóvil
。
我使用RestKit:
[AFJSONRequestOperation addAcceptableContentTypes:[NSSet setWithObjects:@"text/html",@"charset=UTF-8", nil]];
RKObjectManager *manager = [RKObjectManager managerWithBaseURL:baseURL];
manager.requestSerializationMIMEType = RKMIMETypeJSON;
[manager.HTTPClient setDefaultHeader:@"Content-Type" value:@"application/json"];
[manager.HTTPClient setDefaultHeader:@"Accept" value:@"application/json"];
[manager.HTTPClient setDefaultHeader:@"Accept-Encoding" value:@"gzip, deflate"];`
答案 0 :(得分:0)
您收到的信息使用HTML实体(也称为“字符实体引用”)进行编码。例如,ó
代表ó
,因为它突然显示o。
理想情况下,你有一个API可以向你发送UTF-8中的所有内容,但如果不可能,你需要自己解码文本。这个Stack Overflow question提供了许多解决方案。