Javascript LastFM API登录-CORS问题

Javascript LastFM API登录-CORS问题,javascript,jquery,ajax,cors,Javascript,Jquery,Ajax,Cors,我正在尝试使用lastfmapi。我从一个非常基本的模板开始,我想做的就是连接到lastfmapi并对自己进行身份验证。我的HTML页面上有一个按钮- <button id="auth">AUTHENTICATE</button> 我正在本地主机上运行这个。从AJAX请求中可以看到,它支持CORS。我还可以看到CORS头属性被添加到我的请求头中。但是服务器也需要使用CORS头响应,就像访问控制允许源代码一样。但是响应不包含任何这样的标题 但是lastFM API支持CO

我正在尝试使用lastfmapi。我从一个非常基本的模板开始,我想做的就是连接到lastfmapi并对自己进行身份验证。我的HTML页面上有一个按钮-

<button id="auth">AUTHENTICATE</button>
我正在本地主机上运行这个。从AJAX请求中可以看到,它支持CORS。我还可以看到CORS头属性被添加到我的请求头中。但是服务器也需要使用CORS头响应,就像访问控制允许源代码一样。但是响应不包含任何这样的标题

但是lastFM API支持CORS,所以它不应该在响应头中发送这些属性吗?另外,现在如何使用CORS对我的应用程序进行身份验证


我知道我可以使用JSONP,但我想知道是否有任何方法可以使用CORS处理这个问题?

多亏了@potatopeelings,我得到了答案。我们需要的不是调用身份验证url,而是将其重定向到一个单独的页面,该页面将要求我授权应用程序使用lastFM帐户。我还提供了一个回调URL,在我给出授权后,它将重定向到我的应用程序。 所以我的最终URL是-

myURL = "http://www.last.fm/api/auth/?api_key=XXX&cb=http://localhost:63342"
我删除了我的AJAX调用来执行以下操作-

window.location.replace(myUrl);

您在控制台上看到任何错误吗?顺便说一句,在您开始呼叫之前,用户实际上需要通过最后一个fm(基本上是您获得会话令牌)授予您的应用程序访问权限。你有没有试着用旧的方式登录,然后用CORS进行其余的通话?是的。我得到了api密钥,然后试图连接到最后一个fm以验证用户。浏览器说它不允许调用不同的域。这是唯一的错误。我对API调用完全陌生,我从未尝试过使用代理之类的老方法,但我知道这是可以做到的。我认为它是如何工作的,比如说用户来到你的站点并单击get Artister或其他什么。您重定向到last.fm。。api_key=xxxx,这将是最后一个.fm登录页面,用户将登录。然后,用户会看到一个页面,上面说last.fm将与应用程序X(您的应用程序)共享用户信息。用户单击ok,站点将使用会话令牌重定向回您的站点。现在是启动CORS调用(使用会话令牌访问用户数据)的时候了。至少我认为它是这样工作的。请注意,用户可能就是您。你仍然需要登录。所以我有一个网站,目前托管在我的本地服务器上。我有一个按钮,点击它,我被重定向到last.fm。。api_key=xxxx,但我从来没有看到过那个页面,上面说它需要我登录。相反,在Firebug/控制台中,我看到我的请求失败了。我应该尝试代理吗?这很奇怪-你正在重定向(而不是打电话,对吗?)。因为只要导航到就会打开登录页面(只需尝试一下——唯一需要更改的是api密钥)
window.location.replace(myUrl);