我想向this Amazon Alexa API发送请求。
该页面包含我使用Amazon Echo进行的最近50次活动。该页面返回JSON。在您请求该页面之前,您需要授权您的帐户,以便在浏览器中设置正确的cookie。
如果我做一些简单的事情:
const rp = require("request-promise");
const options = {
method: "GET",
uri: "https://alexa.amazon.com/api/activities?startTime=&size=50&offset=-1",
json: true
};
rp(options).then(function(data) {
console.log(data);
}).catch(function(err) {
console.log(err);
});
我可以向该网址发送GET请求。这项工作正常,但亚马逊不知道我是谁发送请求,因为我还没有授权我的NodeJS应用程序。
我已成功将常规浏览器中的~10个Cookie复制到隐身标签中并以此方式授权,因此我知道复制Cookie会有效。使用tough-cookie
添加所有内容后,遗憾的是它无法正常工作。我仍然被重定向到登录页面(根据错误响应)。
如何授权此API,以便发送我的请求?
答案 0 :(得分:0)
我一直在寻找解决方案。我最好的想法是使用account linking,但我还没有尝试过。看起来ASK-CLI也有这样的接口,但我无法弄清楚如何使用它(该URL是什么?)。对于将帐号链接到第三方服务器并不容易,但将其链接回亚马逊,因为json API不应该那么复杂。