wcf - 通过 WCF 服务的 JSON 输出中的 URL 格式不正确

标签 wcf json formatting

我的 WCF 服务契约(Contract)定义如下:

[OperationContract]
    [WebGet(
        UriTemplate =
            "HubContent/{language}?apptype={appType}"
        ,
        ResponseFormat = WebMessageFormat.Json)]
    HubResults GetHubContent(string language, string appType);

在服务中实现此合约时,我返回一个以 JSON 格式解析的对象列表。但是,每当对象的属性之一是 URL 或任何包含正斜杠的字符串时,浏览器中的服务返回的 JSON 都会转义正斜杠。所以这个网址:- http://www.example.com/test/site看起来像这样

http\/\/www.example.com\/test\/site.

我是否需要在契约(Contract)中指定与格式相关的内容以纠正此问题?

最佳答案

转义正斜杠是完全有效的 JSON(请参阅 http://json.org/,“字符串”结构)。例如,如果您通过

{"myUrl":"http\/\/www.example.com\/test\/site"}

对于任何 JSON 解析器(例如 JavaScript“eval”函数),myUrl 的值将为“http://www.example.com/test/site ”(它将自动转义斜杠)。

或者我误解了你的问题?在这种情况下,您可以发布一个您认为损坏的 JSON 示例吗?

关于wcf - 通过 WCF 服务的 JSON 输出中的 URL 格式不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4090877/

相关文章:

wcf - JSONP 对您的 API 来说是必须的吗?

c# - WCF 中同一服务的两个端点,一个安全,一个不安全

c# - WCF - 想知道请求队列

java - 在 ContainerResponseFilter 中使用 Moxy 进行 JSON 解码

java - 使用 string.format 将 double 转换为字符串

c# - 格式化 XML 字符串以打印友好的 XML 字符串

sql - 将序列号转换为日期

c# - 使用 HttpWebRequest 连接 Azure 服务总线中继(WCF 终结点)

javascript - 为什么 jQuery.parseJSON 在 Firefox 中无法解析这个有效的 JSON 文档?

ios - 从 json 插入核心数据模型