WCF with a client without WCF

When using my WCF service, the client receives the following error message. The problem is that I can easily run the code from a Windows client or console application. Just not from my web application.

System.InvalidOperationException was unhandled by user code
  Message="Client found response content type of 
  'multipart/related; type="application/xop+xml";start="<http://tempuri.org/0>";boundary="uuid:28551dc8-55af-4ec9-a9dc-169075c7f50a+id=6";start-info="text/xml"', but expected 'text/xml'. 
  The request failed with the error message: --  
  --uuid:28551dc8-55af-4ec9-a9dc-169075c7f50a+id=6 Content-ID: <http://tempuri.org/0> Content-Transfer-Encoding: 8bit Content-Type: application/xop+xml;charset=utf-8;type="text/xml"  
  <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault><faultcode xmlns:a="http://schemas.microsoft.com/net/2005/12/windowscommunicationfoundation/dispatcher">a:InternalServiceFault</faultcode><faultstring xml:lang="en-US">PrintOut3: Conversion failed</faultstring><detail><ExceptionDetail xmlns="http://schemas.datacontract.org/2004/07/System.ServiceModel" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><HelpLink i:nil="true"/><InnerException i:nil="true"/>

This is my WCF service binding configuration

<basicHttpBinding>
  <binding name="BasicHttpBinding_IMakePDFService" closeTimeout="00:01:00"
    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
    allowCookies="false" bypassProxyOnLocal="false"
    hostNameComparisonMode="StrongWildcard"
    maxBufferSize="65536" maxBufferPoolSize="524288" 
    maxReceivedMessageSize="65536" messageEncoding="Mtom" 
    textEncoding="utf-8" transferMode="Buffered"
    useDefaultWebProxy="true">
    <readerQuotas maxDepth="32" maxStringContentLength="8192" 
      maxArrayLength="16384" maxBytesPerRead="4096" 
      maxNameTableCharCount="16384" />
    <security mode="None">
      <transport clientCredentialType="None" 
        proxyCredentialType="None" realm="" />
      <message clientCredentialType="UserName" algorithmSuite="Default" />
    </security>
  </binding>
</basicHttpBinding>
+3
source share
2 answers

From the message, it appears that your WCF service correctly returns a SOAP message, while your client can expect a raw POX (Plain Old XML) message.

What kind of client is this? Do they expect to just make a REST style call for the url and return the XML payload ??

, WCF, WebHttpBinding basicHttpBinding ( WebHttpBinding ).

+1

, MTOM- , . , MTOM, , , . , , Fiddler WCF Logging.

+1

Source: https://habr.com/ru/post/1733574/


All Articles