プロバイダーからWebサービス(SOAP)にアクセスしようとしています。サーバーの応答を制御できません。私が使用しているこれには、コンストラクターでWDSLとオプションを渡すZend_Soap_Clientを使用して、getFunctionsを実行できますが、最初のSoapメソッドにアクセスしようとすると次のようになります。
[Sender] looks like we got no XML document
周りを見回してsoapUIを使用してサーバーから取得した回答を確認した後、回答にXML宣言がないことがわかりました。
<?xml version="1.0" encoding="XXXXXXX"?>
それで、Zend_Soap_ClientにXML宣言に基づくXML検証を省略させる方法はありますか?宣言の欠如が私の問題であると仮定します。
これに使用するコードは次のとおりです。
private $_connection_settings = array('login' => self::API_user, 'pwd' => self::API_password, 'key'=> self::API_Key);
private static $CONNEXION_PARAMS = array(
'soap_version' => SOAP_1_1,
'encoding' => 'UTF-8'
);
...
//somewhere in my code:
$client = new Zend_Soap_Client('http://server_URL?wsdl', self::$CONNEXION_PARAMS);
$response = $client->fistSoapMethod($this->_connection_settings);
そして、応答は割り当てられません。
ありがとう!