當前位置:最新電影網 - qq音樂 - ? 壹篇文章玩轉世界最強音樂Spotify API操作

? 壹篇文章玩轉世界最強音樂Spotify API操作

Spotify的API簡單分為兩個入口:

其中所有的授權相關驗證都通過 授權入口 進行,而所有正常獲取數據的API請求都從 API入口 進行。

參考官網:Authorization Guide

參考官方Github Issues:Getting higher usage rate limits

其中只說了不同請求方式的限制次數有不同,但是沒寫具體有多少:

參考另壹篇官網文檔: /web-api/user-guide/

"Rate limiting is applied on an application basis (based on client id), regardless of how many users are using it."

即無關多少個用戶,限制次數只是和每個app掛鉤的。

前往Spotify開發者網址: /dashboard

登錄後點擊 create a client id ,生成壹個專用的 client_id 和 client_secret 。

同時必須認真設置 Redirect URIs ,因為日後授權驗證時要完全匹配才行。

在進行授權申請之前,要先確定這個app需要哪些權限,確定好了再到授權過程中通過參數進行聲明。

Spotify對權限進行了詳細的分類,全部的權限如下:

參考官方:Authorization Scopes

在之後我們對 /authorize 頁面進行GET申請授權時候,需要在URL裏加入 scope 參數,裏面的值就是我們所選擇的壹些權限申請。

每條權限名用 空格分開

只讀型 的常用權限有:

修改型 的常用權限有:

全部組合起來的請求URL是這樣的:

授權的最終目的是獲取壹個名為 access_token 的值,然後用這個 access_token 去獲取各種個樣的API信息。

參考官方:Authorization Guide

Spotify為了嚴格區分不同的用途和權限,把這個 access_token 的獲取方法分為了三種流程,各自的權限、存活期都不同。

三種流程特點如下:

這是推薦的授權流程,可以獲得全部權限,比較安全,且可以刷新token。但是交互步驟多了壹點,需要彈出頁面手動點擊“授權”按鈕才行。

具體步驟:

測試過程中,我們是用Postman。好在Postman提供了最簡單的方法,壹步到位:使用內置Oauth2.0設置。

設置方法是:

完成後,每個頁面的Header或URL中,都會自動增加壹個 access_token 值。

authentication 的值裏,已經默認加上了 Bearer 前綴及後面的base64編碼字符串。

註意:同名的參數如果以前存在,則會被覆蓋。內置oAuth 2.0的設置是灰色的,在這裏不可直接編輯。

這種流程只需要用Dashboard後臺中的 client_id 和 client_secret 可以直接獲取 access_token 。

這個不好用,因為功能太少,文檔不全,基本的Oauth還要自己手動解決,沒什麽現成的方法。

這個也構建不完全,基於async異步,但是很難走通。文檔也沒說明具體用法。