【问题标题】:JSON.parse throws syntax error with string created by JSON.stringifyJSON.parse 使用 JSON.stringify 创建的字符串引发语法错误
【发布时间】:2014-04-11 07:10:29
【问题描述】:

我正在通过 RabbitMQ 传递 JSON.stringify 消息。看来,当它通过 rabbit 时,它不再是 JSON.parse 可以读取的东西了。

sendNodeCreated(JSON.stringify({UID:"sdflkjh45", NAME:"Node 71", X:45, Y:54}));

在另一端,我收到一个字符串:

{"UID":"sdflkjh45","NAME":"Node 71","X":45,"Y":54}

当我在这个字符串上调用 JSON.parse 时,我得到了

SyntaxError: Unexpected token s
at Object.parse (native)

任何帮助将不胜感激。这条消息在我正在运行的 python 应用程序中解析得很好,并且 JSONlint 说它是有效的。

【问题讨论】:

  • 您确定要将字符串传递给另一端的JSON.parse 吗?您提供的信息不足以解决问题。
  • 你怎么打电话给JSON.parse()?例如,它是用来自 jQuery 的 AJAX 调用的数据调用的吗?因为 jQuery 和其他框架已经根据您调用 AJAX 函数的方式为您解析数据。
  • var obj = JSON.parse(msg.content.toString()) 当我 console.log(msg.content.toString()) 我得到:{"UID":"sdflkjh45","NAME":"Node 71","X":45,"Y":54} 消息内容在 python 中使用 simplejson 解析得很好。该应用程序在 node.js 中使用 amqplib

标签: json parsing


【解决方案1】:

好吧,我 force_reset rabbitmq,现在一切正常。希望这种情况持续下去。

【讨论】:

  • 您能否通过向我们提供解决方案并将您的解决方案标记为答案来更详细地庆祝它?
  • 我从来没有弄清楚问题的原因,但它确实停止发生了。直到今天,这对我来说仍然是个谜。
猜你喜欢
  • 2019-02-04
  • 2013-06-02
  • 1970-01-01
  • 2020-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-09
  • 2019-12-09
相关资源
最近更新 更多