【发布时间】:2015-08-19 14:36:00
【问题描述】:
我有一个 PHP 脚本试图连接到 WSDL。 我需要允许自签名并提供基本的身份验证详细信息。 使用 SOAP UI,当我连接到 WSDL 时,系统会提示我输入用户名/密码。 我得到了这个工作。
我还发现每个请求还需要基本身份验证(所以在请求屏幕上,我必须选择身份验证,然后选择基本身份,输入与我在提示中使用的凭据相同的凭据)。
如何在 PHP 中执行此身份验证 正如我所说,我可以连接,不是问题,如果我尝试发出请求,我似乎会终止服务或超时
<?php
$context = stream_context_create(array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
));
$data = array(
'columnA' => 'dataA',
'columnB' => 'dataB',
'columnC' => 'dataC');
$url = 'https://111.111.111.111:1234/dir/file';
$login = 'username';
$pwd = 'password';
$client = new soapClient(null, array(
'location' => $url,
'uri' => '',
'login' => $login,
'password' => $pwd,
'stream_context' => $context
));
echo "\n\r---connected---\n\r";
$result = $client ->requestName($data);
print_r($result);
?>
我的输出是 ---已连接---
然后它似乎挂起。 我已经尝试将它包裹在一个 try catch 中,并且得到了相同的结果。
有什么建议吗??
【问题讨论】:
标签: php soap wsdl soap-client