3

Javascript関数を含むJSON文字列をJacksonJsonNodeに解析することは可能ですか?

私が解析しようとしている(JSON形式の)文字列:

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

Javaオブジェクトでは、Map(Javascript関数がStringに変換される)のようなものを期待します。

現在、次の例外があります。

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 に答える