我正在为客户开发一个 API 脚本,他们需要的服务之一是请求内容长度。据我所知,PHP 无法在 header 中发送 Content-Length。我可能是错的,但是,如果没有它,我会一直在标记 html 行 3 [string:Exception:private] => [code:protected] => 0 [file:protected] => 中得到 Premature end of data =>
代码如下:
<?
try
{
$soap_url = 'http://admin.stock.imdfulfilment.com/api/service.asmx';
$client = new SoapClient($soap_url);
$header = new SoapHeader(
'http://admin.stock.imdfulfilment.com/api/service/',
'GetCouriers',
array(
'Content-Length' => '255'
)
);
$client->__setSoapHeaders($header);
var_dump($client->__getFunctions());
}
catch (Exception $e)
{
print_r($e);
}
最佳答案
您的 wsdl
uri 不提供 wsdl
文件,这就是问题所在...使用 http://admin.stock.imdfulfilment.com/api/service.asmx?wsdl
关于PHP SOAP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11089765/