使用SOAPui我至少能够尝试请求并查看结果:)但我需要在PHP中复制它...例如,使用身份验证凭据在PHP中发出请求然后存储响应在mySQL表中。
这就是请求的样子
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:DoThis>
<tem:licensId>[MYLICENSID]</tem:licensId>
<tem:licenskey>[MYLICENSKEY]</tem:licenskey>
<tem:guid>[AGUID]</tem:guid>
</tem:DoThis>
</soapenv:Body>
</soapenv:Envelope>
所以我需要验证/验证请求(我猜)?但是我如何用PHP做到这一点? 一旦我收到工作请求,将如何呈现响应?我想将其插入到现有的mySQL DB中。也就是说这是我的“终结游戏”/目的。从外部系统检索信息,将其与DB中的现有信息进行比较,如果存在新信息,则替换当前系统或添加新信息。
我试过
$wsdl = 'http://URLTOSERVICE/Export.svc?wsdl';
$client =
new SoapClient(
$wsdl,
array(
"tem:licensid" => "[MYLICENSID]",
"tem:licenskey" => "[MYLICENSKEY]",
"tem:guid" => "[AGUID]"
)
);
print_r($client->DoThis());
但是回应与在2天内查看空白纸一样有趣......即,什么都不返回。
就像我在主题标题和开头所说的那样。我没有使用SOAP的经验。所以,如果有一些善良的灵魂需要时间来回答,请记住我需要明确而准确的解释:)
感谢任何花时间帮助我理解这一点的人......
答案 0 :(得分:0)
你能指出WSDL网址吗?我建议你尝试使用WSDL到php转换器,以便更清楚地了解如何调用SOAP Web服务。 要将凭据设置为您指定的请求,必须使用Soapheader类http://php.net/manual/fr/class.soapheader.php,并在调用操作之前调用__setSoapheaders http://www.php.net/manual/fr/soapclient.setsoapHeaders.php。 如果您需要任何帮助或WSDL转换器,请告诉我。