新手 - Chrome 扩展和 Spotify API

Newbie - Chrome Extension & Spotify API

我已经离开编程游戏一段时间了,正试图重新投入其中寻找乐趣。我正在为 spotify 网络播放器开发一个笨拙的 Chrome 扩展,用于检查当前播放的歌曲是否被标记为露骨。

Spotify 有两个版本的网络播放器。较新的版本可以很容易地查看曲目是否明确,但旧版本并不总是有此信息。我确实设法提取了曲目 ID 并使用 Spotify API,理论上我应该能够使用类似以下内容提取曲目信息:https://api.spotify.com/v1/tracks/4ckuS4Nj4FZ7i3Def3Br8W - 用当前播放的曲目 ID 替换 ID。在 URL 中的数据将是

"explicit" : true,

"explicit" : false,

我只是不知道如何让扩展程序获取和解析这些数据。我一直在尝试使用 XMLHttpRequest 函数,但没有任何效果,我看到了一些关于跨域问题的信息,我想知道这是否是我 运行 所关注的,因为扩展在本地机器上而不是 *.spotify.com。但同样,作为 chrome/js 的新手,我不确定。

您从 api 中检索的数据采用 json 格式,因此您需要做的就是使用 JSON.parse() 解析从 http 请求中收到的字符串link. All you need to do is parse that data, which will turn it into a javascript object. from there all you need to do is grab that boolean with parsedObject.explicit. If you don't know what json or objects are here are two simple explanations for each (respectively) understanding json and understanding objects.

如果您的 http 请求失败,很可能是因为您没有设置扩展程序的网站访问 permissions in the manifest correctly. Make sure a permission for accessing api.spotify.com is in place and the Match pattern 已正确设置为将您尝试通过 http 请求访问的页面列入白名单。 ("https://api.spotify.com/*" 在你的情况下)