使用Spotify API的Chrome扩展OAUTH

时间:2016-07-11 00:32:49

标签: javascript html google-chrome google-chrome-extension oauth

我一直在使用Spotify API编写一个chrome扩展程序,只是在我需要OAUTH完成它的部分。

我一直在关注spotify誓言页面(https://developer.spotify.com/web-api/authorization-guide/

它说你可以进行GET调用,它会带你到页面登录,但是当我实现它时,它什么都不做。我觉得我错过了一些代码,但我不确定我错过了什么。

 var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
  if (xhr.readyState == 4) {
    // Just alerting it to see what it came up with
    alert(xhr.responseText);
  } 
} 
xhr.open("GET", "https://accounts.spotify.com/authorize/?client_id=<clientID>&response_type=code&redirect_uri=https%3A%2F%2Fwww.google.com%2F", true);
 xhr.send();

这是我现在拥有的代码(填写了客户端ID),并且运行它什么都不做。 (我现在指定http://www.google.com/作为我的回调)

1 个答案:

答案 0 :(得分:0)

在任何情况下,XHR请求都不会打开一个页面

运行此代码应返回页面内容,但不对其执行任何操作 - 当然不能正确显示它以供用户进行交互。

您似乎需要阅读更多关于OAuth的内容。那说:

Chrome扩展程序API为此提供了一个特定的工具:chrome.identity.launchWebAuthFlow()。它将负责向用户显示auth页面并将令牌传回给您。您需要为其使用特定的“虚拟”网址 - 有关详细信息,请参阅chrome.identity documentation。另请注意,此API无法在内容脚本中使用,您需要将其委托给后台页面。