肥皂请求失败.服务器或代码问题


Soap request failing. Server or code issue?

我正在尝试为站点设置数据请求,但是在尝试提取数据时遇到问题。

我使用 http://www.soapclient.com/soaptest.html 测试了 url 和凭据,它运行良好,因此我知道服务已启动并且输入了正确的凭据,但是,当使用以下代码时,我收到以下错误;

致命错误:未捕获的肥皂故障异常:[无效登录]在...

我用来发出请求的完整代码(通用 URL 除外(是;

<?php
$client2 = new SoapClient("http://www.example.com/api/soap.php?wsdl", array('trace'=> true));
$results2 = $client2->boxInfo(array(
                                  "customer" => 'XBLK', 
                                   "size"  => "four",
                                   "price" => "twenty"));
echo "<pre>";
var_dump($client2-> __getLastRequestHeaders());
var_dump($client2-> __getLastRequest());
var_dump($client2-> __getLastResponseHeaders());
var_dump($client2-> __getLastResponse());
var_dump($results2);
echo "</pre>";
?>

由于我是这些调用的新手,我不确定在更新 php 时是否错过了 SOAP 安装的某些内容(我验证它已安装并启用(,或者我是否只是盯着代码太久以至于我只是错过了一些明显的东西。

如果它在其他地方工作,这是一个客户端问题。尝试使用对象而不是数组来保存参数:

$params = new stdClass();
$params->customer = 'XBLK';
$params->size = 'four';
$params->price = 'twenty';
$results2 = $client2->boxInfo($params);