该API需要包含授权代码的标头。所以这就是我到目前为止
var fullUrl = 'https://api.ecobee.com/1/thermostat?json=\{"selection":\{"includeAlerts":"true","selectionType":"registered","selectionMatch":"","includeEvents":"true","includeSettings":"true","includeRuntime":"true"\}\}' ;
var nestRequest = new XMLHttpRequest();
nestRequest.open("GET", fullUrl, true);
var temp: "AUTHORIZATION_CODE_GOES_HERE";
nestRequest.setRequestHeader("Authorization", "Bearer " + temp);
我能够使用Curl进行查询,并且我知道令牌是正确的。但是,当我尝试使用XMLHttpRequest时,出现此错误:
500:
代码:1
消息:“身份验证失败。需要令牌。”
这使我认为设置HEADER有点问题...
这是标头上的要求:
标题:
内容类型:application / json; charset = UTF-8
授权:承载Rc7JE8P7XUgSCPogLOx2VLMfITqQQrjg
关于我在做什么错的任何想法吗?
最佳答案
var temp: "AUTHORIZATION_CODE_GOES_HERE";
应该是:
var temp = "AUTHORIZATION_CODE_GOES_HERE";
关于javascript - 使用XMLHttpRequest来获取Ecobee API信息。得到500(错误1:“身份验证失败。需要 token 。”),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49564223/