天空扫描仪 api,创建预订请求
Posted
技术标签:
【中文标题】天空扫描仪 api,创建预订请求【英文标题】:sky scanner api, create booking request 【发布时间】:2014-03-02 14:09:14 【问题描述】:我正在尝试使用 skyscanner api
http://business.skyscanner.net/portal/en-GB/Documentation/FlightsLivePricingDetails
获取预订详情部分
我正在尝试创建预订请求,以便随后对其进行轮询, 我尝试输入的数据变量是正确的,但我只是返回了一个服务器错误,所以我怀疑我的 curl 请求有缺陷
$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)));
【讨论】:
以上是关于天空扫描仪 api,创建预订请求的主要内容,如果未能解决你的问题,请参考以下文章