メモ内容
SpotifyAPIを使ってSpotifyCloneを作ってる際、現在のユーザーのプレイリストを取得するときに注意しておきたかったこと。
結論
プレイリストがpublicであれば、scopeを指定せず
に取得でき、
プレイリストがprivateであれば、scopeを指定することで
非公開のプレイリストを取得できる。
scope = [
// privateのプレイリストを取得するときに必要
'playlist-read-private',
];
引っかかりポイント
でも、ここで厄介なのがプレイリストの詳細にあるプロフィールに追加するでした。
ちょうど1年前に、公開・非公開
からプロフィールに追加
に仕様変更しているという記事があったので、これで納得しました。
↓↓↓
参考記事:
Spotify のプレイリストを非公開にできなくなった?
AppleMusicユーザーの僕にとっては全然知らないことでした。。。笑
(これで、公開・非公開の概念が頭から突き放されてたわけだ...🤔)
プレイリストの公開方法(アプリとWebの比較)
アプリかWebによって、プレイリストの公開方法が異なるようなので下記にまとめておきます。
Spotify Appの場合
プロフィールに追加する or 公開する
→scopeを指定せずに、現ユーザーの公開プレイリストを取得できる
プロフィールから削除 or 非公開にする
→scopeを指定することで、現ユーザーの非公開プレイリストを取得できる(公開プレイリストを含む)
※公開するとプロフィールに追加のずれが生じることアリ
Spotify Webの場合
プロフィールに追加する
→scopeを指定せずに、現ユーザーの公開プレイリストを取得できる
プロフィールから削除
→scopeを指定することで、現ユーザーの非公開プレイリストを取得できる(公開プレイリストを含む)
これで、現在のユーザーのプレイリストを取得することができました!
コメント
今回は、SpotifyAPIを使った現ユーザーのプレイリストを取得することのちょっとしたメモを書いてみました。
やっぱり開発は、なぜを明確にすることが大事って思わされましたね。
SpotifyAPIでどんなデータが返ってくるかの確認は、コンソールとか使って確認するのもいいかもですね。