当前位置: 首页 > 知识库问答 >
问题:

更改WCF服务以接受内容类型“application/xml;charset=UTF-8”

姜烨伟
2023-03-14

我创建了WCF服务,该服务将由需要接受内容类型application/xml;charset=UTF-8和SOAP1.1信封命名空间的第三方使用。该服务当前正在接受text/xml;charset=utf-8。不允许客户端更改内容类型。

我没有对web.config文件做任何更改,除了设置basicHttpBinding MaxReceivedMessageSize。

  <bindings>
      <basicHttpBinding>
        <binding name="http" maxReceivedMessageSize="2147483647"/>
      </basicHttpBinding>
    </bindings>   

共有1个答案

司马彦
2023-03-14

此问题通常是由于服务类型造成的。传统的SOAP web服务以web服务规范为基础,以SOAP信封为通信载体,内容类型为“Application/SOAP+XML”;charset=UTF-8“或”text/XML;charset=UTF-8“(用于与XML web服务兼容)。
https://en.wikipedia.org/wiki/soap
特定的HTTP头在Restful样式服务中很常见。WCF也可以创建一个restful样式的服务。
https://docs.microsoft.com/en-us/dotnet/framework/WCF/framework/WCF/feature-details/how-to-create-a-basic-wcf-whtp-details
example。
https://docs.microsoft.com/en-us/dotnet/framework/WCF/feature-details/how-to-create-a-basic
这里是我写过的一个例子。

 类似资料: