即使在解码 URL 之后,node.js 中的 JSON 解析错误
Posted
技术标签:
【中文标题】即使在解码 URL 之后,node.js 中的 JSON 解析错误【英文标题】:JSON parse error in node.js even after decoding URL 【发布时间】:2012-06-19 02:21:34 【问题描述】:data="convID":"E40E92FD4B410","serverDate":"2012/06/15 07:51:07 PM","masterInfo":"instance":"808477149_R_BDD72269D1C1E98A32D8C83EC58CF471","appVersion":"0.97.13.D","depth":4,"jsonURL":"//testtn","scenario":"R","serverDate":"2012/06/15 07:51:07 PM ","deviceName":"M’s","localDate":"2012/5/6 11:14:59 AM PDT"
JSON.parse(data);
给出一个错误。这是由 JSON.generate 在 ruby 脚本中生成并发送到节点 http 服务器,应用 decodeURIComponent 来获取上面打印的数据。仍然 JSON 解析失败并出现此错误:
undefined:1
ate":"2012/06/15
^
SyntaxError: Unexpected token d
at Object.parse (native)
【问题讨论】:
【参考方案1】:在您的代码示例中,data
是 JS 对象。但是JSON.parse
将字符串作为其参数,而不是对象。所以你的代码必须是:
data='"convID":"E40E92FD4B410","serverDate":"2012/06/15 07:51:07 PM","masterInfo":"instance":"808477149_R_BDD72269D1C1E98A32D8C83EC58CF471","appVersion":"0.97.13.D","depth":4,"jsonURL":"//testtn","scenario":"R","serverDate":"2012/06/15 07:51:07 PM ","deviceName":"M’s","localDate":"2012/5/6 11:14:59 AM PDT"';
JSON.parse(data);
因此,请检查实际代码中data
变量的值和类型。
【讨论】:
好。你应该accept我的回答。以上是关于即使在解码 URL 之后,node.js 中的 JSON 解析错误的主要内容,如果未能解决你的问题,请参考以下文章
如何解码 Java 生成的 Node.js 中的 jwt 令牌?
即使在事件循环中没有要执行的回调,Node.js Web 服务器如何保持运行?
使用 javascript (Node.js) 规范化 URL