ホームページ  >  記事  >  バックエンド開発  >  PHP で、SOAP を介して 2 つのパラメーターを渡す方法 (ms-security の下)

PHP で、SOAP を介して 2 つのパラメーターを渡す方法 (ms-security の下)

WBOY
WBOYオリジナル
2016-06-23 14:01:381043ブラウズ

$xml = '            <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">            <wsse:UsernameToken>            <wsse:Username>admin</wsse:Username>            <wsse:Password>PasswordText</wsse:Password>            </wsse:UsernameToken>            </wsse:Security>';        $header = new SoapHeader('http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd', 'CallbackHandler', new SoapVar($xml, XSD_ANYXML), TRUE);        $this->client = new SoapClient($wsdl);        $this->client->__setSoapHeaders(array($header));        $userInfo = turnObjectToArray($this->client->__call('checkUser', array('username' => array('username' => 'username', 'password' => 'password'))));



上記のコードを実行するとすぐにエラーメッセージが表示されます
SoapFault exception: [soap:Server] Fault occurred while processing. in 


その後、相手がログを確認すると、ユーザー名は渡されましたが、パスワードは渡されていませんでした。相手はパラメータを渡すことができます 受け取りました
$info = turnObjectToArray($this->client->__call('getClasses', array('gradeId' => array('gradeId' => $data['id']))));


2つのパラメータを渡すにはどうすればよいですか? ? ?


ディスカッションへの返信(解決策)


大文字と小文字に注意してください!

ケース、メソッド、パラメータは何ですか?

wsdl で渡されるパラメータはパスワードであるのを見て、とても腹が立ちました。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。