【发布时间】:2026-02-13 03:50:01
【问题描述】:
我从 AJAX 调用中收到了这个 JSon 字符串:
{status:OK,addresses:[0,1,2,3,4,5]}
要将其转换为 JSON 对象,我有这行:
var jsonObj = eval(jsonString);
但是抛出异常!这个在异常变量中没有消息。 我也尝试过使用
{"status":"OK","addresses":[0,1,2,3,4,5]}
而且,又一次抛出异常,但说发现了意外的字符“&”。
我正在使用 Struts2,并且从一个动作中接收到 JSon。
任何帮助将不胜感激。 谢谢
【问题讨论】:
-
那不是 JSON 字符串。它甚至不是一个有效的 JavaScript 对象字面量。第二个版本是 JSON,我希望
eval能够处理它(但应该避免使用eval,去获取 json2.js)。由于数据中的任何地方都没有&,因此它一定来自您未提供的代码。由于我们看不到这一点,我们无法告诉您如何解决它。 -
所以我验证了当从请求中接收到 JSon 时,所有的“都被替换为”......这可能是问题吗?
-
是的!解析器期待 JSON 而不是 HTML 编码的 JSON!
-
那么...我怎样才能避免它以编码的 HTML 形式出现?我只有一个打印 Strut Action 中定义的属性的 JSP。
标签: javascript json exception struts2