首页 > 解决方案 > 访问soap web服务生产环境的问题

问题描述

我希望这个问题不会被标记为重复,因为我在网站上阅读了许多相关的问题和答案:尽管我尝试了大部分建议,但仍然无法解决我的问题。

我的代码库:(根据我的浏览,我故意留下评论以了解我迄今为止一直在尝试的内容)

      try { 
    
    $opts = array(
        //~mrossw 'http' => array(
            //~mrossw 'user_agent' => 'PHPSoapClient'
        //~mrossw ),
        //~mrossw 'socket' => array('bindto' => '158.69.189.149')
        'socket' => array('bindto' => '127.0.0.1')
        //~mrossw ,
        //~mrossw 'ssl' => [
          //~mrossw 'verify_peer'       => true,
          //~mrossw 'verify_peer_name'  => true,
          //~mrossw 'allow_self_signed' => true
    //~mrossw ]

    );
    $context = stream_context_create($opts);    
    
    $client = new SoapClient("https://ws_provider_hostname:xxxx/foo/bar/blah/Operaciones/OpFooBarBlahReqABCS?wsdl",
    //~mrossw $client = new SoapClient($doc_root.'OpCotizadorVehiculoExtReqABCS.xml',
        array(
          'location' => "https://ws_provider_hostname:xxxx/foo/bar/blah/Operaciones/OpFooBarBlahReqABCS?wsdl",
          'uri' => "https://ws_provider_hostname:xxxx/foo/bar/blah/Operaciones",
          // Stuff for development.
          'trace' => 1,
          'exceptions' => true,
          'keep_alive' => true,
          'connection_timeout' => 120,
          'stream_context' => $context,
          'cache_wsdl' => WSDL_CACHE_NONE,
          'compression'   => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP | SOAP_COMPRESSION_DEFLATE,
          //~mrossw 'local_cert' => $certRequest_param['sslcertfile'],
          //~mrossw 'login'=>'username',
          //~mrossw 'password' => 'password'
        )
    );
  } catch (Exception $e) {
              echo \"<h2>Exception Error!</h2>\";
              echo $e->getMessage();
              // print_r($e);
  }   

你知道什么可以阻止代码从我的公共网络服务器上工作吗?

或者我还能检查什么?

例如,我找不到从浏览器外部检查 ws 服务器的 http 响应代码的方法。我既不能得到一个请求表单来返回 wsdl xml,但这也许应该是另一个问题。

也让我知道我是否可以提供任何其他相关的测试或数据。

标签: phphttpssoap-clientweb-application-firewall

解决方案


推荐阅读