【发布时间】:2014-10-30 07:03:12
【问题描述】:
我有一个带有单个函数 getProd() 的 wsdl,它接受一个字符串参数并有一个 SOAPaction getProd。我已经能够使用 NuSoap 和 SoapClient 使用 Web 服务。但是每当我尝试使用 curl 使用它时,我都会收到错误 Missing argument 1 for getProd()。请帮忙。之前用 curl 消费过其他的 web 服务,所以不知道是什么问题。
这是我的代码
$soap_do = curl_init();
$post_string = "books";
curl_setopt($soap_do, CURLOPT_URL, "http://localhost/wsdl/post.php?wsdl" );
curl_setopt($soap_do, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($soap_do, CURLOPT_TIMEOUT, 10);
curl_setopt($soap_do, CURLOPT_RETURNTRANSFER, true );
curl_setopt($soap_do, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($soap_do, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($soap_do, CURLOPT_POST, true );
curl_setopt($soap_do, CURLOPT_POSTFIELDS, $post_string);
curl_setopt($soap_do, CURLOPT_HTTPHEADER, array(
'Content-Type: string; charset=utf-8',
"Cache-Control: no-cache",
"Pragma: no-cache",
"SOAPAction: getProd",
'Content-Length: '.strlen($post_string)
) );
$response = curl_exec($soap_do);
echo $response;
echo curl_error($soap_do);
【问题讨论】:
标签: php web-services curl soap wsdl