直到最近,我还可以通过请求https://embed.spotify.com/oembed/?url=<track_url>&format=json
来查询Spotify oEmbed API以获取嵌入片段
从那时起,它仍然在浏览器中或通过 wget
工作,但它不再通过例如 Ruby 以编程方式工作:
Net::HTTP.get_response(oembed_url)
现在,这将返回一个空白字符串和 200 状态代码(成功)。发生了什么变化?它是否需要特定的 HTTP 标头?
事实证明,它需要一个用户代理。我想这是一个非常标准的做法,但@SpotifyPlatform的一条小推文将不胜感激。
注意不要使用不起眼的用户代理,例如 Ruby
而是特定的东西,例如应用的名称,以避免遇到配额限制。