如何显示$ client = new SoapClient($ myUrl)生成的错误,

时间:2015-01-06 11:33:28

标签: php web-services soap wsdl

我在php中使用soap。我第一次使用肥皂,所以我没有足够的知识。 我有肥皂代码

 $client = new SoapClient("http://Url/services/webservices?wsdl",
    array('login' => $username,
            'password' => $password,
            'trace' => TRUE,
            'exceptions' => 1,
            'soap_version' => SOAP_1_2))
            or exit("Unable to create soap client!");

我在SoapUI 5.0.0软件中调用此soap请求。 在SoapUI中,当我使用空白用户名和密码点击这个soap服务时,它会产生一些错误。在这一行

$client = new SoapClient("http://Url/services/webservices?wsdl",

错误是:

HTTP/1.1 401 Bad credentials
Date: Tue, 06 Jan 2015 10:53:26 GMT
Server: Apache
WWW-Authenticate: Basic realm="realmNameForServices"
Content-Length: 0
Keep-Alive: timeout=30, max=99

但是在我的php页面上,它没有显示在$ client中(当我在doint print_r($ client)时)。 此外,我在同一行上收到胎儿错误,因此下一行没有执行。

胎儿错误正在显示..多数民众赞成确定,以及我必须显示错误的凭据错误。请建议我如何在我的php页面上显示此错误。我需要显示此错误。

请原谅我英语不好以及我的问题形式不佳。

2 个答案:

答案 0 :(得分:1)

试试这个:

try {  
   $client = new SoapClient("http://Url/services/webservices?wsdl",
                            array('login' => $username,
                                  'password' => $password,
                                  'trace' => TRUE,
                                  'exceptions' => 1,
                                  'soap_version' => SOAP_1_2))  
} catch (Exception $e) {  
    echo $e->getMessage(); 
}

答案 1 :(得分:0)

最后我得到了答案。我想分享一下。

答案很简单。我不知道这个。我只是将例外=> 1更改为例外=> 0 它开始显示肥皂产生的所有错误。