【发布时间】:2012-03-13 07:03:06
【问题描述】:
我正在尝试在远程主机上通过 https 调用 WS:远程端口,我得到:
获取 http 标头时出错
使用 PHP5 SoapClient;我可以通过$client->__getFunctions() 获取函数列表,但是当我调用$client->myFunction(...) 时,我总是会收到此错误。
我用谷歌搜索,发现在 php.ini 中增加 default_socket_timeout 应该可以解决它,但它不起作用。
谁能给我建议一个解决方案?
编辑:这里是代码:
$wsdl="myWSDL";
$client = new SoapClient($wsdl,array('connection_timeout'=>5,'trace'=>true,'soap_version'=>SOAP_1_2));
var_dump($client->__getFunctions());
try {
$response=$client->myFunction("1","2","3");
} catch (SoapFault $fault) {
var_dump($fault);
}
}
总是以错误结束。
我该如何解决这个问题?
【问题讨论】:
-
嗯...
ini_set('user_agent','somerandomuseragent');有帮助吗?您是否尝试过手动请求该服务? -
如果我通过 Lynx 或 curl 向 WS 发出手动请求,它运行良好;尝试设置 user_agent 但没有成功
-
此错误消息经常出现在 default_socket_timeout 之后。你能用 ini_set 增加它的值吗?
-
@Cris 嗨 Cris,你解决了这个问题吗?我也遇到了同样的问题,我需要纠正这个问题:)
-
这仍然可能是该错误的原因之一。为我工作。谢谢
标签: php soap-client