【问题标题】:Uncaught SoapFault exception: [HTTP] Proxy Authentication Required未捕获的 SoapFault 异常:[HTTP] 需要代理身份验证
【发布时间】:2015-06-10 08:15:52
【问题描述】:

使用 php Soapclient 我得到了异常:

Uncaught SoapFault exception: [HTTP] Proxy Authentication Required 

但是,当使用设置了相同代理的 Web 浏览器时,如果没有为该代理指定任何凭据,我可以连接并获取 XML 响应。

系统部门确保无需进行身份验证。另外我使用SoapUI只是配置代理来测试porpouses,再次没有凭据,我可以调用WS中的方法。

为什么 php SoapClient 会抛出该异常?这是我正在使用的代码...

$this->client   = new SoapClient( null, array(
            'location'          => 'http://www.xxxxx.dev',
            'uri'               => self::URI,
            'proxy_host'        => self::PROXY_HOST, 
            'proxy_port'        => self::PROXY_PORT,
        ) );

【问题讨论】:

    标签: php soap proxy


    【解决方案1】:

    以下解决异常

    $this->client = SoapClient( self::URL , array(  
        'proxy_host'        => self::PROXY_HOST,
        'proxy_port'        => self::PROXY_PORT,
        'authentication'    => SOAP_AUTHENTICATION_BASIC,
        'stream_context'    => stream_context_create(array(
        'ssl' => array(
                'verify_peer' => false,
                'verify_peer_name' => false,
                'allow_self_signed' => false
            )
        ))
    ));
    

    误解了文档“WSDL 文件的 URI 或 NULL 如果在非 WSDL 模式下工作”,我期望第一个参数是文件,而不是 URL。在一些尝试中,我已经尝试过但忘记使用 SSL 参数设置流上下文以跳过对等验证。 (可能不需要 SOAP_AUTHENTICATION_BASIC)

    希望对某人有所帮助

    【讨论】:

      猜你喜欢
      • 2018-07-07
      • 1970-01-01
      • 2020-01-01
      • 2012-09-15
      • 1970-01-01
      • 2011-10-25
      • 2016-09-05
      • 2016-04-24
      • 1970-01-01
      相关资源
      最近更新 更多