【问题标题】:Spotify Auth + frontend JavaScript + Client Credential FlowSpotify Auth + 前端 JavaScript + 客户端凭证流
【发布时间】:2014-11-12 15:55:28
【问题描述】:

使用这些信息
https://developer.spotify.com/web-api/authorization-guide

我正在尝试实施“客户端凭据流程”来自动化身份验证过程。但不知何故,我得到了下面的错误。

XMLHttpRequest 无法加载 https://accounts.spotify.com/api/token?grant_type=client_credentials。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'websiteURL' 不允许访问。

    $http.get('https://accounts.spotify.com/api/token?grant_type=client_credentials', {
        headers: {
            'Authorization': 'Basic ' + key)
        }
    }).success(function(r) {
        console.log('got access token', r);
    }).error(function(err) {
        console.log('failed to get access token', err); 
    });     

我也通过 Ajax / Jquery 和其他方法尝试过,但仍然有这个 'Access-Control-Allow-Origin'。

我已经阅读了很多关于 CORS、Angular、Node 等的资料。老实说,我很困惑我应该使用其中的哪一个,而且我不知道如何使用。 有人可以帮我简化一下吗?

【问题讨论】:

    标签: asp.net-web-api spotify spotify-app


    【解决方案1】:

    这不是您要查找的流程 - 客户端凭据流程用于服务器之间的通信。

    相反,请查看 Authorization Code Flow,以及为什么不查看 Jose Perez 的出色 JavaScript wrapper 用于使用 Spotify 的 Web API 的前端。

    此流程允许您的应用程序的用户进行身份验证并授权您的应用程序代表他们执行操作(例如,将曲目添加到播放列表、创建播放列表等)。使用客户端凭据流检索的访问令牌未连接到特定用户,这限制了您的应用程序可以使用它执行的操作。

    【讨论】:

    • 天啊.. 一直做错了.. 这很容易。即将通过使用 node.js 使其更复杂哈哈.. 谢谢老兄!
    • 你可能想看看thirtify,这是一个使用 Spotify Web API 的 AngularJS 网络应用程序。另外,angular-spotify,一个用于与 Web API 通信的 AngularJS 服务。
    • 是的@JMPerez,我一直在使用它作为实现的基础,但现在规格发生了变化。他们不想登录,所以您的 api 非常有帮助.. 竖起大拇指!顺便说一句..您是否也有基于从您的 API 派生的内容创建网络播放器的实现?
    • 最接近基于 API 的网络播放器是 Thirtify。我们实际上使用它来展示我们发布的新端点。
    • 我明白了..谢谢会找到一种方法来整合两者..谢谢!
    猜你喜欢
    • 2022-11-09
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 2018-12-14
    • 1970-01-01
    • 2014-11-20
    • 2023-02-19
    • 2021-12-22
    相关资源
    最近更新 更多