由于换行符,JSON请求失败,如何逃避它们?

时间:2009-06-15 23:39:17

标签: asp.net-mvc json

由于换行符(我以编程方式编织自己的JSON字符串),我的JSON请求似乎失败了。

我怎样才能逃脱换行?

{"rc": "200", "m" : "", "o": "<div class='s1'>
            <div class='avatar'>                    
                <a href='\/asdf'>asdf<\/a><br \/>
                <strong>0<\/strong>
            <\/div>
            <div class='sl'>
                <p>
                    444444444
                <\/p>
            <\/div>
            <div class='clear'>
            <\/div>                        
        <\/div>"}

string jsonString = BuildJSON(someCollection).Replace(@“/”,@“/”);

4 个答案:

答案 0 :(得分:1)

在构建该字符串之前,请使用\n进行替换。

答案 1 :(得分:1)

您不需要自己序列化JSON。使用.NET为您完成:

JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();

string JSON = jsonSerializer.Serialize(new {
    rc = 200,
    m = "",
    o = "<div>...</div>" });

序列化程序的完整命名空间名称为:System.Web.Script.Serialization.JavaScriptSerializer

答案 2 :(得分:0)

我认为你可能在你的例子中引起了一个问题......你不需要转义/字符,只需要转义任何\字符。所以/实际上是错的,它应该只是/.

\的任何实例都应更改为\。

尝试使用此修正案。

剥离换行符的示例可以在这里找到:

http://www.bennadel.com/blog/161-Ask-Ben-Javascript-Replace-And-Multiple-Lines-Line-Breaks.htm

答案 3 :(得分:0)

您应该可以通过调用.Replace(“\ n”,“\ n”)来转义换行符。