我尝试搜索SO但无法找到解决方法。
我的iOS从用户收到评论(NSString)并通过Http POST将其发送回服务器,然后如果用户想要再次查看该评论,则评论由Http get发回。我在UILabel中展示了这一点。
如果它包含表情符号(笑脸等)
,我似乎无法正确显示评论当我输入表情符号时。控制台显示发布到服务器之前的数据是“\ Ud83d \ Ude1d” 当我通过JSON从我的服务器上取回它时,它就是这个字符串“\ Uf61d”。它只是用方框字母显示而不是一个合适的表情符号。
这是我将代码发送到服务器时的代码(NSUTF8Encoding)
NSDictionary *postDetailDict = [NSDictionary
dictionaryWithObjectsAndKeys:
itemID,@"item_id",
title,@"title",
nil];
for (NSString *param in postDetailDict) {
[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n", param] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"%@\r\n", [postDetailDict objectForKey:param]] dataUsingEncoding:NSUTF8StringEncoding]];
}
当我从HTTP GET收到数据时。我只是用
[commentObject setComment:[d objectForKey:@"comment"]];
[commentLabel setLabel:commentObject.comment];
有人请帮忙。我的服务器在Heroku(Rails)上
提前致谢
答案 0 :(得分:2)
我找到了解决方案。它与前端无关。这是关于从我的rails服务器返回的JSON没有正确解码的方式。 此解决方法可以为具有相同问题的人解决此问题