JSON.parse 无法识别要解析的字符串中的 \" (反斜杠和引号)

Adr*_*ano 2 javascript c# json

我已经使用字符串中带有引号的对象序列化了 JSON,如下所示:

var bla = [
    { 
        "label": "person", 
        "id": "1", 
        "data": "bla means: \"lala\"" 
    }
];
Run Code Online (Sandbox Code Playgroud)

我知道它在服务器端的样子。但是当我在浏览器中调试它时,我发现收到了错误,因为它如下所示:

var bla = [
    { 
        "label": "person", 
        "id": "1", 
        "data": "bla means: "lala"" 
    }
];
Run Code Online (Sandbox Code Playgroud)

和我的错误:

未捕获的语法错误:JSON 中 JSON.parse () 位置 25 处出现意外标记 l

我读到 JSON 应该识别\" https://www.json.org/

有什么想法我应该在哪里纠正吗?当我序列化对象时在服务器端还是使用 JavaScript 在客户端?

编辑:

在服务器端,我使用 C# 库"System.Web.Script.Serialization" 来序列化对象:

List<SomeObject> someObject= new List<SomeObject>();
        SomeObject bla1 = new SomeObject();
        bla1.id = "1";
        bla1.label = "person";
        bla1.label = "bla means: \"lala\"";
        someObject.Add(bla1);
Run Code Online (Sandbox Code Playgroud)

var bla = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(someObject);

概括

我修复了服务器端的序列化字符串,因为我使用 API,无法操作该对象。 var bla = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(someObject).Replace("\\\"", "\\\\\\\"");

小智 6

就我而言,我只使用String.raw()。

JSON.parse(`{ "key": "\""}`) // fail
JSON.parse(String.raw`{ "key": "\""}`) // work
Run Code Online (Sandbox Code Playgroud)