PHPのcURL関数を使って、HTTPのPOSTをするサンプル 2013/11/11
<?php
$url = "http://requestb.in/vpza6qvp";
$postdata = array("field1" => "x", "field2" => "123");
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
XMLでPOSTする例。$postdata
にXMLを文字列で与えて、リクエストヘッダを application/xml
にする。
$url = "http://requestb.in/vpza6qvp";
$postdata = "<item><key>test01</key></item>";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
cURL | PHP Manual
http://php.net/manual/ja/book.curl.php
上記サンプルで使っている requestb.in
というのは、HTTPリクエストの内容を簡単に確認できるサービス。
RequestBin
http://requestb.in/
PHPにかぎらず、HTTPリクエストを実行できるツールが実際にどんなリクエストヘッダ・本体を送信しているかを確認できる。 RequestBinがその場限りで生成するURLにリクエストをかければよい。