使用Web API进行无浏览器身份验证

时间:2018-03-06 13:07:29

标签: authentication spotify

我正在尝试使用web api对桌面应用程序内的用户进行身份验证。我没有使用浏览器,我直接使用GET和PUSH调用Spotify服务器的端点。我马上遇到了一些问题。看来,在对#34; accounts.spotify.com"的初始GET命令中,返回的响应包括带有javascript函数的HTML,该函数运行并负责动态生成您在初始登录页面上看到的HTML。如果你看一下Javascript函数,很明显这是正在发生的事情,但是,你也可以看到这些代码被混淆了,而不是我们开发人员使用的代码! (链接到此处的Javascript代码以供参考:Javascript function

所以我的问题是,虽然我可能会对代码进行反向工程以使其正常工作,但这是否会违反Spotify开发人员TOS?

谢谢!

1 个答案:

答案 0 :(得分:1)

Spotify的身份验证通过oauth进行,根据oauth rfc,用户身份验证的很大一部分是用户委派您的应用程序的权限以执行影响其帐户的API调用,或返回信息关于他们。这是您正在查看的网页 - 必须将其呈现给您的用户,以便他们可以委派权限,以便Spotify可以为您的应用提供访问令牌。它不一定需要在浏览器中发生 - 它可以在桌面应用程序内的Web视图中发生 - 但它确实需要通过https加载,并且您的应用程序不得更改或反向设计Spotify权限委派页面

正如您所猜测的那样,对任何Spotify API进行逆向工程都违反了服务条款。

有关Spotify平台授权的更多信息,我建议您查看this guide

希望有所帮助!如果您还有其他问题,请告诉我。

Spotify开发人员支持