SOAPのUIでは、いくつかのリクエストプロパティ、具体的にはUsername
,とWSS-Password Type
を渡すことができます。SOAPリクエストのプロパティをPHPで渡す方法(SoapUIのように)
$soap = new SoapClient('https://rev-int.api.us.fleetmatics.com/Vehicle/SageQuest/VehicleService.svc?wsdl',
array("Username" => "[email protected]",
"Password" => "notarealpassword",
"WSS-Password Type" => "PasswordText"));
しかし、私:私はそうのようなのSoapClient関数の2番目のパラメータとしてPHPでこれらの値を渡して試してみた
:彼らは赤いボックスで、以下のスクリーンショットでマークされていますAn error occurred when verifying security for the message.
WSDL私はここではですが、私の質問は一般的にこのようにリクエストのプロパティを渡すことについてですが、実際https://rev-int.api.us.fleetmatics.com/Vehicle/SageQuest/VehicleService.svc?wsdl
マイナス。渡された文字列のどれもヘッダーのどこにも見えません。セッションIDは、ここで説明されているようなWSSの疑いがあります。http://php.net/manual/en/soapclient.soapclient.php#97273しかし、私はまだそれを実装する方法がわかりません解決策は、すべての私の試行が失敗したからです。 – Bing
sessionIDはありますが、ユーザー名とパスワードがない場合は、見ているサーバーとの最初の通信ではないと思います。私の考えは、ユーザー名とパスワードがサーバーに送られる前のものがあったということです。 私はリンク先のページに精通しています。情報はOKですが、xmlコードを知っていると、私の意見ではもっと簡単に行うことができます: '$ xml = SoapUIのセキュリティヘッダーのコピー; $ securityToken =新しいSoapVar($ xml、XSD_ANYXML); $ header =新しいSoapHeader($ nsWSSE、 'Security'、$ securityToken); $ client - > __ setSoapHeaders($ header) ' –
SoapUIから' Security headerのコピーをどこから取得していますか?私のヘッダーセクションは完全に空白です(1749msの応答時間のちょうど上にある 'Headers(0) 'として添付された画像に見られるように)。 – Bing