[英]iOS Encode String From JSON API
我正在使用NSURLConnection
和NSJSONSerialization
从JSON中的API下载数据。 JSON返回所有&
如HTML和号文字: &
。
我想知道是否应该在服务器上使用UTF-8将其正确编码为Unicode,并以&
接收到,或者是否应该这样做。
这是我用来下载数据的代码:
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:api_url]];
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
[NSURLConnection sendAsynchronousRequest:request
queue:queue
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
// do work
}];
我认为JSON
规范中没有要求它是一种方法。 当我亲自使用自己可以控制的API
,我喜欢在服务器端完成这类工作(更好的是,我更喜欢将诸如HTML
标记之类的视图内容放在数据的首位)。
JSON必须以某种Unicode格式编码。 格式可以是UTF-8,UTF-16大端或小端,或UTF-32大端或小端。 JSON字符串中的字符可以像\\ u007f这样进行编码,但是,如果有&字符,那么这就是服务器要发送给您的数据。 例如,服务器可以发送包含html或URL的字符串,而您将接收带有&字符和全部的字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.