【问题标题】:.NET PostSubmitter sends backslashes.NET PostSubmitter 发送反斜杠
【发布时间】:2010-04-18 15:51:23
【问题描述】:

我正在使用 C# 将 JSON 发送到 PHP 脚本,如下所示:

string json = "{";
json += "\"prop\":\"some text\"";
json += "}";

PostSubmitter post = new PostSubmitter();
post.Url = "http://localhost/synch/notein.php";
post.Type = PostSubmitter.PostTypeEnum.Post;
post.PostItems.Add("note", json);
post.Post();

当然,我必须转义内部引号,但它们会被发送到脚本!更糟糕的是:有文本已经有引号,所以必须将它们转义为有效的 JSON。在这种情况下,我希望传输反斜杠。有什么想法可以实现吗?

【问题讨论】:

    标签: c# .net json http-post backslash


    【解决方案1】:

    为什么不将自定义对象序列化为 json 结果。这样你就不用担心转义了,框架会......这是一个使用JavaScriptSerializer - Convert objects to JSON in C# using JavaScriptSerializer的例子

    【讨论】:

      【解决方案2】:

      转义你的反斜杠\\:

      json += "\\\"prop\":\\\"some text\\\"";
      

      【讨论】:

        【解决方案3】:

        糟糕,我认为 PostSubmitter 来自 .NET 框架,但它是第三方的。尽管如此:原来这是一个PHP问题。如果有人遇到类似问题:在 PHP-docs 中查找 get_magic_quotes_gpc。

        【讨论】:

          猜你喜欢
          • 2012-12-09
          • 2015-02-27
          • 1970-01-01
          • 1970-01-01
          • 2010-12-14
          • 2012-07-16
          • 1970-01-01
          • 2013-11-14
          相关资源
          最近更新 更多