0
我正在使用PHP与SOAP webservice进行通信,我遇到了麻烦。php“所有验证都必须通过SSL完成”,使用SOAP
// Create SOAP client object
$objClient = new SoapClient("https://panopto_host/Panopto/PublicAPI/4.0/Auth.svc?wsdl", array('trace' => true));
// These parameters satisfy this specific remote call.
$loginParams = array('userKey' => 'cmjw', 'password' => 'bleh');
$objLogin = $objClient->LogOnWithPassword($loginParams);
我得到的错误是“所有认证必须通过SSL完成”。我不知道这是一个服务器应用程序错误消息还是一个标准的SOAP错误,但奇怪的是我在.Net中创建了非常简单的程序,创建了一个服务引用来生成代理类,并且它工作正常。
我缺少什么PHP使方法调用使用SSL?
感谢您的任何建议。 科里。
https://dlri.hosted.panopto.com/Panopto/PublicAPI/4.0/Auth.svc?wsdl [link](https://dlri.hosted.panopto.com/Panopto/PublicAPI/4.0/Auth。 svc?wsdl) – cardinalPilot 2012-03-14 18:26:03
我认为'操作''LogOnWithPassword'元素指向http URL'http:// tempuri.org/IAuth/LogOnWithPassword'而不是https – 2012-03-14 18:29:22
好点。遵循这一思路,我查看了服务soap:地址位置,它有http,这是不对的。当我下载WSDL时,将其更改为https,引用它,它现在似乎工作。感谢您的正确方向。 .Net工作,因为它在服务参考中有https。 – cardinalPilot 2012-03-14 18:38:12