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