当前位置:  开发笔记 > 编程语言 > 正文

为什么Objective-C将JSON值转换为ASCII字符代码的哈希值?

如何解决《为什么Objective-C将JSON值转换为ASCII字符代码的哈希值?》经验,为你挑选了1个好方法。

我们正在构建一个iPhone聊天应用程序.

从浏览器向iPhone发送JSON聊天消息时:

    {"content":"Hi"}

iPhone收到:

    {"content":{"0":72,"1":105,"length":2}}

但是,我们打算让它收到同样的确切消息.

要重现此问题,请先安装node.js和redis.然后:

获取代码:

git clone git://github.com/acani/acani.git
cd acani
git submodule update --init

在默认端口上启动Redis.

来自http://github.com/acani/acani-node:

node acani-node-server.js # run node.js chat server
# open index.html in a Google Chrome or Firefox and follow instructions.

打开位于http://github.com/acani/acani-chat/tree/master/Lovers2/的 Lovers.xcodeproj ,并将LoversAppDelegate.m更改为最初加载ChatViewController而不是HomeViewController.

homeViewController = [[HomeViewController alloc] init]; # comment out this line
# change the next line to:
navigationController = [[UINavigationController alloc] initWithRootViewController:[[ChatViewController alloc] init]];
# Then, build & run.

ma11hew28.. 6

我们想通了.根本不是iPhone或Objective-C.转换错误发生在node.js服务器上.我们忘了在JSON对象的字符串值周围加上引号,因此JSON.stringify()JavaScript函数正在转换字符串,如上所示...除了我们做的事情:{"content":Hi}.当我们将其更改为:时{"content":"Hi"},它运行正常.Duhh ...



1> ma11hew28..:

我们想通了.根本不是iPhone或Objective-C.转换错误发生在node.js服务器上.我们忘了在JSON对象的字符串值周围加上引号,因此JSON.stringify()JavaScript函数正在转换字符串,如上所示...除了我们做的事情:{"content":Hi}.当我们将其更改为:时{"content":"Hi"},它运行正常.Duhh ...

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有