よくわかりませんが、次のコードを使用して資格情報を追跡する別の方法を見つけました。説明させてください。
SOAPリクエスト全体をサーバー側に返すコード$sSoapRequest = file_get_contents('php://input');
...
次の2つの関数は、値を引き出すのに役立ちます..
function doAuthenticate()
{
$sSoapRequest = file_get_contents('php://input');
if(isset($sSoapRequest))
{
$sUsername = hookTextBetweenTags($sSoapRequest, 'Username');
$sPassword = hookTextBetweenTags($sSoapRequest, 'Password');
$sSignature = hookTextBetweenTags($sSoapRequest, 'Signature');
if($sUsername=='testuser' && $sPassword=='test123456' && $sSignature=='5595610031002')
return true;
else
return false;
}
}
function hookTextBetweenTags($string, $tagname) {
$pattern = "/<$tagname ?.*>(.*)<\/$tagname>/";
preg_match($pattern, $string, $matches);
return $matches[1];
}
そして、doAuthenticate()
サーバー側のすべてのプロセスにメソッドを使用します。