2016-09-04 3 views
1

unofficial AirBnb APIを使用して、お客様のリスティングのairbnbカレンダーを取得しようとしています。 APIは、カレンダーを取得するためにカールを使用していますPHPのURLを使用してAirBnbカレンダーを取得する問題

curl -X POST --compressed 
-H "X-Airbnb-OAuth-Token: 9nwld6we4td9vkwj160teb49a" 
-H "Content-Type: application/json; charset=UTF-8" 
--data-binary '{"operations":[{"method":"GET","path":"/calendar_days","query":{"start_date":"2016-01-30","listing_id":"12132179","_format":"host_calendar","end_date":"2017-03-30"}},{"method":"GET","path":"/dynamic_pricing_controls/12132179","query":{}}],"_transaction":false}' 
https://api.airbnb.com/v2/batch/?client_id=3092nxybyb0otqw18e8nh5nty&locale=en-US&currency=USD 

私はHurl.itを使用してそれをテストしてきたので、私はそれが動作します知っています。問題はPHPを使用して--data-binaryセクションを送信する正しい方法がわからないことです。私の現在のPHPコードは

$query = '{"operations":{"method":"GET","path":"/calendar_days","query":{"start_date":"' . date('Y-m-d') . '","listing_id":"' . $propertyID . '","_format":"host_calendar","end_date":"' . date('Y-m-d', strtotime('+1 year')) . '"}},"_transaction":false}'; 

$curl = curl_init(); 

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://api.airbnb.com/v2/batch/?client_id=$client_id", 
    CURLOPT_RETURNTRANSFER => true, 
    CURLOPT_HTTPHEADER => [ 
     "Content-Type" => "application/json; charset=UTF-8", 
     "X-Airbnb-OAuth-Token" => $token 
    ], 
    CURLOPT_POST => true, 
    CURLOPT_POSTFIELDS => $query 
)); 

$calendar = curl_exec($curl); 
$err = curl_error($curl); 

curl_close($curl); 

です。何か助けていただければ幸いです。ありがとう。

答えて

0

header("Content-Transfer-Encoding: binary");

を試してみて、TRUE

(そしておそらくもX-Airbnb-APIキーを設定します。client_id_here)にCURLOPT_BINARYTRANSFERを設定

関連する問題