我有一个使用soap的PHP代码
我收到错误
错误:WSDL - SOAP-ERROR:解析WSDL:无法从
加载
这是一个安全wsdl所以我需要发送用户名和密码。 我的代码有什么问题? 我在网上看到它并且在PHP代码中不能使用soap。 这是我的代码:
<?php
ini_set("soap.wsdl_cache_enabled", "0");
$soap_url = 'http://some-ip/prod/app/soap/user/storeitemws?WSDL';
$sh_param = array(
'username' => 'aya',
'password' => 'aya');
$soap_client = new SoapClient($soap_url);
$test = $soap_client->Authenticate($sh_param);
echo $test . "\nDone";
?>
感谢
答案 0 :(得分:2)
请参阅documentation:
$client = new SoapClient("some.wsdl", array('login' => "some_name",
'password' => "some_password"));
将username
更改为login
并尝试上述方法
答案 1 :(得分:0)
Authenticate()
是一个SOAP方法吗?以什么方式保护wsdl?如果您使用浏览器访问它会发生什么?
SoapClient不支持对其构建的WSDL进行身份验证,因此您必须手动下载WSDL(例如使用cURL)并从该文件创建SoapClient。
答案 2 :(得分:0)
在localhost上使用,安装WAMP
点击wamp tray icon&gt; PHP服务&gt;并启用这些选项:
的 OpenSSL的,
php_openssl,
卷曲;
SOAP,
附:可能,一些免费托管没有这些选项
答案 3 :(得分:0)
也许有些防火墙?你无法访问服务器?