如何使 WCF 服务接受内容类型为“text/xml”而不是“application/soap+xml”的 soap 消息。我必须在 SSL 上托管服务。因此,我在安全模式“传输”下使用 wsHttpBinding。因为我使用 wsHttpBinding,所以我认为请求的内容类型被强制为“application/soap+xml”。我在这里错过了什么吗?我做错了什么?

请您参考如下方法:

是的,wsHttpBinding 确实采用 SOAP 消息传递。但是,如果您定义自定义绑定(bind),则可以将 SOAP 版本更改为“无”。它是文本编码器绑定(bind)元素中的一个属性。

这是一个例子。

http://msdn.microsoft.com/en-us/library/aa738456.aspx

如果您打算做很多这样的事情,那么您应该看看 ASP.NET Web API。它自动提供对 XML 和 JSON 格式化的支持。您可以使用 WCF 完成此操作,但如果您的目标是构建 REST Web 服务,那么您会发现 ASP.NET Web API 更适合此目的。

http://www.asp.net/web-api/overview/formats-and-model-binding/json-and-xml-serialization


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!