PHP SoapClient无法使用代理访问webservice

时间:2015-09-07 13:36:04

标签: php proxy soap-client

在PHP中使用SoapClient,我遇到了一个我无法找到解决方案的问题。

我正在使用wsdl文件的本地副本,我正在使用此设置:

$this->client = new \SoapClient(__DIR__ . '/../../some.wsdl',
                        array(
                                'proxy_host'    => $ip,
                                'proxy_port'    => $port,
                                'trace' => 1,
                                'exceptions' => true,
                                'cache_wsdl' => WSDL_CACHE_NONE
                        )
                    );

这给出了错误:"禁止"在打电话时:

$this->client->__call($method, $params)

我试过调用__getFunctions()

$this->client->__getFunctions() 

给出了我的WSDL文件中所有函数的列表。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

调试代码如下:

<?php 
    try{
            $client = new SoapClient($wsdl, $params);
            $out = $client;
        }catch(Exception $e){
            $out =  array('error' => $e,  'libxml' => libxml_get_last_error());
        }catch(SoapFault $s){
            $out = array('error' => $s, 'libxml' => libxml_get_last_error());
        }
    var_dump($out);
    exit();