Sky Scanner API, создать запрос на бронирование

Я пытаюсь использовать API Skyscanner

http://business.skyscanner.net/portal/en-GB/Documentation/FlightsLivePricingDetails

получить информацию о бронировании

Я пытаюсь создать запрос на бронирование, чтобы я мог затем опрашивать его. Варианты данных, которые я пытаюсь указать, верны, но мне просто возвращают ошибку сервера, поэтому я подозреваю, что мой запрос скручивания неверен

$apiKey ='keygoeshere';
$Session = $_GET["session"];
$apiSessionUrl ='http://partners.api.skyscanner.net/apiservices/pricing/v1.0/'.$Session.'/booking';

$OutboundLegId = $_GET['OutboundLegId'];
$InboundLegId = $_GET['InboundLegId'];
$data = array('apiKey'=>$apiKey,'OutboundLegId' => $_GET['OutboundLegId'],'InboundLegId' => $InboundLegId);
$dataVars = http_build_query($data);

$ch = curl_init();

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_URL, $apiSessionUrl );
curl_setopt( $ch, CURLOPT_POSTFIELDS, $dataVars);
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);

Любая помощь высоко ценится.

1 ответ

Решение

Добавьте заголовок длины контента, как вы используете PUT запрос.

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($dataVars))); 
Другие вопросы по тегам