我正在尝试学习如何使用谷歌脚本的Skyscanner航班API。似乎网上的信息并不适合像我这样的新手。
从我得到的信息来看,获取航班价格的过程是:-发送一个HTTP POST请求,其中包含我们想要的关于哪些航班的信息-然后发送一个HTTP GET请求,它将为我们提供价格信息
我想用Google Script做到这一点。
到目前为止,我的代码如下:
function sky1() {
/*
Link to Skyscanner.com help : http://business.skyscanner.net/portal/en- GB/Documentation/FlightsLivePricingList
Link to Skyscanner api demo (api key given there): http://business.skyscanner.net/portal/en- GB/Documentation/FlightsLivePricingQuickStart
*/
var apikey = "prtl6749387986743898559646983194";// is given on skyscanner website for testing
var url = "http://partners.api.skyscanner.net/apiservices/pricing/v1.0/?apikey=" + apikey;
// Post http request to skyscanner
var post_resp=sendHttpPost(url,apikey);
}
function sendHttpPost(url) {
// post_params
var post_params = {
"Country": "CH",
"Currency": "CHF",
"Locale": "en-GB",
"Adults": 1,
"Children": 0,
"Infants": 0,
"OriginPlace": "12015",
"DestinationPlace": "5772",
"OutboundDate": "2015-08-09",
"InboundDate": "2015-08-23",
"LocationSchema": "Default",
"CabinClass": "Economy",
"GroupPricing": true
};
var options =
{
"method" : "POST",
"contentType" : "application/json", // didn't get what this means
"payload" : JSON.stringify(post_params), // didn't get what this means
"muteHttpExceptions" : true, // avoids error message
};
var post_resp=UrlFetchApp.fetch(url,options);
Logger.log(post_resp.getResponseCode());
return post_resp;
}任何帮助都将不胜感激。这给了我一个415响应rode,而不是201,表示会话已经创建。
附言:我不是一个程序员,如果我们保持简单的事情,我将非常感激。
发布于 2015-06-08 18:32:36
Skyscanner API团队在这里。您可能会对https://github.com/Skyscanner/skyscanner-api-js上的参考Javascript实现感兴趣。我还推荐使用Fiddler (一个网络跟踪工具)来比较来自http://business.skyscanner.net/portal/en-GB/Documentation/FlightsLivePricingQuickStart的测试工具的请求/响应与您的代码的请求/响应。
https://stackoverflow.com/questions/30698321
复制相似问题