json - 为什么 JSON.parse 会因 Node.js 中的编码字符而阻塞?

标签 json node.js unicode

我正在尝试在 Google's dictionary semi-api 中查找单词“flower” 。来源:

https://gist.github.com/DelvarWorld/0a83a42abbc1297a6687

长话短说,我使用回调参数调用 JSONP,然后重新处理它。

但它遇到了这个障碍:

undefined:1
ple","terms":[{"type":"text","text":"I stopped to buy Bridget some \x3cem\x3ef
                                                                    ^
SyntaxError: Unexpected token x
    at Object.parse (native)

Google 正在为我提供转义的 HTML 字符,这很好,但是 JSON.parse 无法处理它们?让我感到奇怪的是这工作得很好:

$ node

> JSON.parse( '{"a":"\x3cem"}' )
  { a: '<em' }

我不明白为什么我的东西崩溃了

编辑这些都是很好的信息响应,但它们都不能帮助我摆脱堆栈跟踪。

最佳答案

\xHH 不是 JSON 的一部分,而是 JavaScript 的一部分。它相当于\u00HH。由于内置 JSON 似乎不支持它,并且我怀疑您是否愿意经历修改非内置 JSON 实现的麻烦,因此您可能只想运行在沙箱中编写代码并收集生成的对象。

关于json - 为什么 JSON.parse 会因 Node.js 中的编码字符而阻塞?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17961303/

相关文章:

javascript - 在 .Net core 的 Angular 应用程序中访问 Api Url

c++ - 正确使用 Windows 控制台 API 的 CHAR_INFO 结构

java - JsonNode findValue 不搜索子节点

node.js - 通过http下载并使用nodejs流式上传到Google Cloud存储

javascript - 如何使用nodejs获取uber api访问 token

node.js - 如何将 node.js 应用程序作为后台服务运行?

java - 如何使用Java将Unicode符号U+2610和U+2612打印到Windows控制台?

php - PHP 中的正则表达式 : Matching to the UTS18 standard

ios - 使用 Objective C 解析 JSON 的弹性

json - 使用 json4s 解析 JSON 中的空值