【问题标题】:How to include a JSON encoded object as string in another object which will also be encoded in string如何将 JSON 编码对象作为字符串包含在另一个对象中,该对象也将被编码为字符串
【发布时间】:2021-10-22 02:31:25
【问题描述】:

假设您有以下 JSON 对象:

    {"name":"John Smith",
      "jsonData": "{\"comment\":\"He said \\\"It will work\\\", and we are waiting.\"}"
    }

问题是如何使用 JavaScript JSON.stringify() 将上述对象转换为字符串,并能够将其保存在数据库中的文本字段中,稍后检索它,解析它,以及部分内部编码对象jsonData?

JavaScript 和 Java 都面临这个问题。为简单起见,我将在 JavaScript 中重现该问题:

var jsonStr = `{"name":"John Smith",
                "jsonData": "{\\\"comment\\\":\\\"He said \\\"It will work\\\", and we are waiting.\\\"}"
               }`;
var obj = JSON.parse(jsonStr);
var comments = JSON.parse(obj.jsonData);
console.log(comments)

以上失败并出现错误:Uncaught SyntaxError: Unexpected token I in JSON at position 21

而且,我不知道如何在内部编码的 JSON 字符串 He said "It will work" 中包含带引号的字符串。

我想要 Java 和 JavaScript 的解决方案。

【问题讨论】:

    标签: json string


    【解决方案1】:

    您是否考虑过对 JSON 字符串进行 base64 编码? 在此处阅读有关 base64 编码对象的更多信息: Base64 encode a javascript object

    【讨论】:

    • 是的,非常感谢...我认为这是一个更好的主意。我会努力的。同时,请您指出使用转义字符的解决方案吗?
    猜你喜欢
    • 2011-10-12
    • 2021-06-24
    • 2014-05-13
    • 2023-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多