我试图将C#代码更改为PHP,而我无法检查身份验证是否成功。
C#代码:
XmlDocument doc = new XmlDocument();
string outStr = "";
BASoapClient baucli = new BAServiceSoapClient();
OfflineHeader oheader = baucli.Authenticate("username", "pwd", "2.9.0.0", EA_ID, out outStr);
doc.LoadXml(outStr);
bool m_Authenticated;
if (doc.DocumentElement.Attributes["Value"].Value.Equals("True")) {
m_Authenticated = true;
} else {
string errMsg = doc.DocumentElement.ChildNodes[0].Attributes["Msg"].Value;
string action = doc.DocumentElement.ChildNodes[0].Attributes["Action"].Value;
if (action.Equals("Version")) {
string URL = doc.DocumentElement.ChildNodes[1].Attributes["URL"].Value;
}
m_Authenticated = false;
}
PHP代码:
$soapURL = "http://localhost/BWebservice/BWebService.asmx?wsdl";
$soapParameters = array(
'Username' => 'muruga',
'Password' => 'muruga1436',
'ProductVersion' => '2.9.0.0',
'EACode' => '175'
);
$soapClient = new SoapClient($soapURL);
$headers = new SoapHeader('http://localhost/BWebservice/BAU', 'UserCredentials', $soapParameters);
// Prepare Soap Client
$soapClient->__setSoapHeaders(array($headers));
提前致谢