捕获 exception:Internal 服务器错误 Soap 连接 php

Caught exception:Internal Server Error Soap connection php

我正在 php 中构建一个函数来检查用户和密码是否与外部数据库匹配,因此我可以提取电子邮件地址。他们为我创建了一个带有 wsdl 的肥皂,所以我可以检查一下。

我已经可以检查用户是否存在,但是每次我尝试发送 SoapCall 来请求电子邮件时,我都会收到错误消息 Caught exception:Internal Server Error。

我四处寻找这个错误,我在请求期间作为参数发送的数组有某种问题。该数组由我正在检查的用户的登录名/密码组成。

奇怪的是,如果我只发送只有一个参数的数组,那么我不会收到错误,但是我在 return 中只收到一个空字符串,因为用户名和密码不正确'匹配。

我使用相同的结构来检查用户是否存在,并没有给出错误。

这是我建立连接的代码:

checkEmail('HMichiels','xxxxxxx'); 
function checkEmail($pLoginStr,$pPassWordStr){
try{
$client = new SoapClient('https://milliarium.gabo-mi.com/Forms/Generic/Security/ExternalEmailService.asmx?WSDL', array('trace'=>1));
$params = array('pLoginStr'=>$pLoginStr,
            'pPassWordStr'=>$pPassWordStr,);
$response = $client->__soapCall("GetUserEmail",array($params));
$responseS = $response->GetUserEmailResult;

//check what i'm sending inside the soapcall
echo "REQUEST:\n" . $client->__getLastRequest() . "\n";
} catch(SoapFault $fault){
echo 'Caught exception:', $fault->getMessage();
}

有经验的人知道是什么问题吗?这个错误让我浪费了好几个小时><

Tnx

Soap 参数区分大小写并且必须在服务器端匹配。根据 WSDL 的定义,您在应该发送 pPasswordStr 时发送 pPassWordStr