手动生成JSON请求,返回HTML导致问题

时间:2009-06-11 02:25:35

标签: asp.net-mvc json

我正在手动生成JSON,我甚至使用前面的反斜杠转义为引号。这给我带来了麻烦。

我的HTML返回类似于:

<div class="blah"><div class="a2">This is just a test!  I hope this work's man!</div></div>


string json = "MY HTML HERE";
json = json.Replace(@"""", @"\""");

还有更多要替换而不仅仅是双引号吗?

4 个答案:

答案 0 :(得分:0)

我认为这样做会:

json = json.Replace("\"", "\\\"");

请发布更多详情,此代码在哪里?

答案 1 :(得分:0)

是。根据{{​​3}},有效的字符串值是'除了“或\或控制字符之外的任何Unicode字符。

答案 2 :(得分:0)

你在json的字符串中有换行符吗?有时这会破坏许多浏览器。我通常将“改为”,“改为”,将cr / lf更改为“\ n”。根据json.org,换行符不是json规范的一部分,但是大多数javascript解释器都可以处理它。

答案 3 :(得分:0)

不要手动编码JSON - 使用序列化程序!

string json = new System.Web.Script.Serialization.JavaScriptSerializer()
    .Serialize(html);