GWT JavaScriptObject:获取原始 json 字符串?
GWT JavaScriptObject: get original json string?
我一直在我的 GWT 应用程序中使用 JSONP。当我的服务器发送一个 json 字符串时,我可以在客户端以 JavaScriptObject 的形式获取它。
我的问题是我的 json 有复杂的结构:使用映射,嵌套有很多不同的键。提取数据是一个很大的痛苦(我可能要为所有键写几百个函数来一个一个地提取数据和一些复杂的代码来填充地图)。
我正在考虑几个解决方案:
编码并将整个 json 字符串作为普通字符串发送给客户端(作为简单 json 字符串的值)。只是担心我的编码字符串可能比原始字符串长几倍,并且很容易超过 2k 长的限制
将 JavaScriptObject 转换回纯字符串(类似于我从服务器发送的字符串)
获得纯字符串后,我将使用一些 json 解析器/方法将其解析为我觉得方便的结构。
我的问题:
1) 如何将 JavaScriptObject 对象转换回纯/原始 json 字符串?
2) 对解决方案有什么想法吗?
非常感谢
1) 将 JavaScriptObject 转换为 JSON:JsonUtils.stringify(yourJSO)
将 JSON 转换为 JavaScriptObject:JsonUtils.safeEval(jsonString);
2) 您考虑过使用 AutoBeans 吗?? Check out the GWT page
我一直在我的 GWT 应用程序中使用 JSONP。当我的服务器发送一个 json 字符串时,我可以在客户端以 JavaScriptObject 的形式获取它。
我的问题是我的 json 有复杂的结构:使用映射,嵌套有很多不同的键。提取数据是一个很大的痛苦(我可能要为所有键写几百个函数来一个一个地提取数据和一些复杂的代码来填充地图)。
我正在考虑几个解决方案:
编码并将整个 json 字符串作为普通字符串发送给客户端(作为简单 json 字符串的值)。只是担心我的编码字符串可能比原始字符串长几倍,并且很容易超过 2k 长的限制
将 JavaScriptObject 转换回纯字符串(类似于我从服务器发送的字符串)
获得纯字符串后,我将使用一些 json 解析器/方法将其解析为我觉得方便的结构。
我的问题:
1) 如何将 JavaScriptObject 对象转换回纯/原始 json 字符串?
2) 对解决方案有什么想法吗?
非常感谢
1) 将 JavaScriptObject 转换为 JSON:JsonUtils.stringify(yourJSO)
将 JSON 转换为 JavaScriptObject:JsonUtils.safeEval(jsonString);
2) 您考虑过使用 AutoBeans 吗?? Check out the GWT page