1
curlを使用してPHPでexpedia xml webserviceを呼び出そうとしています。しかし、ポストにXMLデータを送信する方法どのようにexpedia xml webserviceをPHPで呼び出す
サンプル要求
<BookingConfirmRQ xmlns="http://www.expediaconnect.com/EQC/BC/2007/09">
<Authentication username="mytestusername" password="mypwd"/>
<Hotel id="7224658"/>
<BookingConfirmNumbers>
<BookingConfirmNumber bookingID="252743459" bookingType="Book" confirmNumber="E2340589B" confirmTime="2013-12-30T23:45:00Z"/>
</BookingConfirmNumbers>
</BookingConfirmRQ>
応答
<BookingConfirmRS xmlns="http://www.expediaconnect.com/EQC/BC/2007/08">
<Success/> OR FAIL
</BookingConfirmRS>
$curl = curl_init();
$url ="https://services.expediapartnercentral.com/eqc/bc";
$data = array();//What will be data here and which formate
switch ($method)
{
case "POST":
curl_setopt($curl, CURLOPT_POST, 1);
if ($data)
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
break;
case "PUT":
curl_setopt($curl, CURLOPT_PUT, 1);
break;
default:
if ($data)
$url = sprintf("%s?%s", $url, http_build_query($data));
}
// Optional Authentication:
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, "MYusername:MYpassword");
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
は、私がここにPOSTデータがどうなるかについて混乱しています私のコードの一部どのフォーマット? CURLを使用するのが正しいアプローチですか、ここでSoapClient()を使用する必要がありますか? あなたのアイデアと解決策をお伝えください。お返事
は確かにAPIの開発者向けドキュメントは、あなたが送信するために必要とされるどのような詳細はそれをしませんでしょうか? – RamRaider
XML本体を作成して送信する必要があります。 – Evert