Soap 使用php请求web服务失败,从windows客户端成功

Soap 使用php请求web服务失败,从windows客户端成功,soap,web,service,iis-7.5,Soap,Web,Service,Iis 7.5,我已经使用asp.NET2.0和一个简单的方法“HelloWorld”编写了一个web服务来测试它。以下是服务器接收的soap信封: 我的用户 我的密码 ?xml version=“1.0”encoding=“utf-16”? 地狱世界/ 我的问题是:如果我从带有嵌入式wsdl的Windows客户端发送请求,它就会成功。如果我从php(或SoapUI)发送请求,请求就会失败——服务器没有“请求”字符串,这意味着主体没有内容。 在这两种情况下,服务器都会收到上面相同的soap信封(用跟踪扩展名

我已经使用asp.NET2.0和一个简单的方法“HelloWorld”编写了一个web服务来测试它。以下是服务器接收的soap信封:


我的用户
我的密码
?xml version=“1.0”encoding=“utf-16”?
地狱世界/
我的问题是:如果我从带有嵌入式wsdl的Windows客户端发送请求,它就会成功。如果我从php(或SoapUI)发送请求,请求就会失败——服务器没有“请求”字符串,这意味着主体没有内容。 在这两种情况下,服务器都会收到上面相同的soap信封(用跟踪扩展名记录)

谢谢你的帮助

哈拉尔德


另外,无论我对请求使用嵌入式XML还是嵌入式字符串。

使用asmx跟踪,我至少发现了SoapUI的问题。请求的需求类别是“text/xml”,它得到了“application/soap+xml”。我已禁用“Soap操作”,调用成功

   <?xml version="1.0" encoding="utf-8"?>
   <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
     <soap:Header>
       <SoapAuthHeader xmlns="http://myservice.anywhere.net/">
         <UserName>MyUser</UserName>
         <Password>MyPassword</Password>
       </SoapAuthHeader>
     </soap:Header>
     <soap:Body>
       <HelloWorld xmlns="http://myservice.anywhere.net/">
         <request>
           &lt;?xml version="1.0" encoding="utf-16"?&gt;
           &lt;HelloWorld /&gt;
         </request>
       </HelloWorld>
     </soap:Body>
   </soap:Envelope>