0

CakePHP を使用して、Web サービスからのデータを使用するアプリケーションを作成しています。Web サービス API は、次のように POST DATA を XML として送信する必要があることを通知しています。

<Request>
    <Key>abcd123</Key>
    <Param1>myval</Param1>
</Request>

CakePHPでこれを達成するにはどうすればよいですか? 私はこのようなことを試しました:

echo $this->Form->create(Model, array('url' => 'https://myprovider/API/myuserid'));
echo $this->Form->input('Key', array('value'=> 'abcd123'));
echo $this->Form->input('Param1', array('value'=> 'myval'));
echo $this->Form->end('Submit');

しかし、送信する前に POST 配列を xml に変換するにはどうすればよいですか?

よろしくお願いします。

クリス

4

1 に答える 1

0

CakePHP で HttpSocket を使用して POST 配列を xml として送信する

App::uses('HttpSocket', 'Network/Http');
App::uses('Xml', 'Utility');
$http = new HttpSocket();
$http->configAuth('Basic', 'user', 'password'); //optional, if needs authentication
$xml_data = Xml::fromArray($this->request->data);
$xml_string = $xml_data->asXML();
$http->post('https://myprovider/API/myuserid', $xml_string); 
于 2013-01-18T05:46:56.600 に答える