3

是否可以将包含 Javascript 函数的 JSON 字符串解析为 Jackson JsonNode ?

我尝试解析的(JSON 格式)字符串:

{
    "key1" : "value1",
    "key2" : "value2",
    "key3" : function () {
       // some javascript code
    }
}  

在 Java 对象中,我希望像 Map(转换为 String 的 Javascript 函数)之类的东西。

目前,我有以下例外:

org.codehaus.jackson.JsonParseException: Unrecognized token 'function'

我发现了很多无效 JSON 使用的功能,但仍然不是我想要的......

任何的想法 ?

谢谢!

4

2 回答 2

2

JSON 不允许函数。尽管您可以将函数编码为这样的字符串,但它是为了安全的数据传输:

{
    "key1" : "value1",
    "key2" : "value2",
    "key3" : "function () { ... }"
}

...但是在重新编码时,它将是一个字符串而不是一个函数,除非您使用eval()它(尽管这很可能是不安全的)。

于 2012-09-19T13:05:05.410 回答
0

这是无效的 JSON,Jackson 不支持;未来也不太可能得到支持。我建议将其设为常规 JSON 字符串,然后在必要时在 Javascript 端重新解析。

于 2012-09-19T21:17:44.197 回答