2013-05-07 139 views
2

我目前正在构建一个需要我发出SOAP请求的系统。我曾经使用SOAP,但很久以前,现在我无法回忆起来了!使用PHP的SOAP请求

下面是示例请求我一直在考虑:

POST /FITSPACE/MHservice.asmx HTTP/1.1 
    Host: fitspace.m-cloudapps.com 
    Content-Type: text/xml; charset=utf-8 
    Content-Length: length 
    SOAPAction: "http://m-hance.com/FITratelist" 

    <?xml version="1.0" encoding="utf-8"?> 
     <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
      <soap:Body> 
       <FITratelist xmlns="http://m-hance.com/" /> 
      </soap:Body> 
     </soap:Envelope> 

这SOAP例子应该让利率由我来操作的返回列表。 任何人都可以告诉我应该发布什么URL,因为这是我遇到的第一个障碍。当我构建URL时,我应该使用它,不会带来任何结果。

在此先感谢!

回答

1

您应该请求wsdl网址发布此请求。

编辑: 我试过下面的代码。从这里看起来工作正常,给我的方法列表。

$url = 'https://XXXXXXXX.m-XXXXXX.com:XXX/FITSPACE/MHservice.asmx?WSDL'; 
$options["connection_timeout"] = 25; 
$options["location"] = $url; 
$options['trace'] = 1; 

$client = new SoapClient($url,$options); 
print_r($client->__getFunctions()); 
+0

嗨,谢谢你的回复。我不明白你的意思?你能再解释一下吗?如果你的意思是WSDL的URL,我有,但每当我尝试用URI启动一个新的SoapClient时,它说有一个问题。0 SOAP-ERROR:解析WSDL:无法从 – devoncrazylegs 2013-05-07 19:13:30

+0

加载是的,你会得到这个错误如果你的web服务(wsdl)url是错误的。尝试联系您的Web服务提供商以获取此URL。 – Sid 2013-05-07 19:20:57

+1

您的网址正在使用'https'检查您的'php_openssl'已在phpinfo中启用。 – Sid 2013-05-07 19:30:37