【问题标题】:How .net web service is doing JSON serializaion.net Web 服务如何进行 JSON 序列化
【发布时间】:2013-07-15 10:43:23
【问题描述】:

我在 c# .net 中开发了 Web 服务。我将方法声明为:

public interface IServiceMeinMedicusApp
{

    [OperationContract]
    [WebInvoke(ResponseFormat = WebMessageFormat.Json, Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, UriTemplate = "GetParamn/value")]
    string GetParamn(int value);
}

我也有根据提供的 WSDL 生成的 java 客户端。在 Java 客户端中,我只需调用等效的 Java 方法即可访问 Web 服务方法。

我的问题是:Web 服务和 Web 客户端如何进行 JSON 序列化。有人可以通过将简单的 JSON 格式发送到正确的地址来访问我的 Web 服务吗?我应该向他提供什么,JSON 中的数据应该是哪种格式以及应该发送到哪里?

【问题讨论】:

    标签: c# .net json service web


    【解决方案1】:

    我应该提供给他什么,JSON中的数据应该是什么样的格式,应该发送到哪里?

    它要么是从 WSDL 生成的客户端,要么是一些手动解决方案。 REST 不做元数据,所以任何消费者都不知道有哪些操作和“数据契约”可用。

    让 Java 使用 WCF WSDL(反之亦然)并不总是那么简单,但仍然比手动创建强类型 REST 客户端更容易。如果我错了,请纠正我。

    您也许可以使用 Fiddler 捕获请求,以检查您的客户端发送给服务的内容。然后,您可以提取数据和 URL 格式以显示给想要访问您的服务的其他开发人员。

    【讨论】:

    • 感谢您的回答。对于喜欢严格 JSON 通信的客户,您如何看待解决方法:创建我自己的客户端,它将接收 JSON 请求、读取参数、调用 Web 服务方法、将响应打包回 JSON 并返回给请求者。
    【解决方案2】:

    您需要提供托管网络服务的网址。由于您已将 ResponseFormat 设置为 WebmessageFormat.Json,因此 JSON 序列化正在发生。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      • 1970-01-01
      • 2019-01-04
      • 2013-04-25
      • 1970-01-01
      • 1970-01-01
      • 2010-09-17
      相关资源
      最近更新 更多