我想将搜索请求发送到 Spotify 的 Web API。他们的文档中描述了一个搜索端点。 URL查询需要两个参数:
type
(即专辑或曲目)q
这是实际的搜索查询q
的格式我不清楚。我只需输入搜索词即可。例如,如果我想查找“Harry Styles”中的歌曲“As It Was”,我只需输入 As It Was Harry Styles
,第一个返回的项目就是正确的歌曲。到目前为止,一切都很好。但 q
的描述指出:
您可以使用字段过滤器缩小搜索范围。可用的过滤器包括专辑、艺术家、曲目、年份、upc、标签:hipster、标签:新、isrc 和流派。每个字段过滤器仅适用于某些结果类型。
他们甚至提供了一个例子:
remaster%20track:Doxy%20artist:Miles%20Davis
对我来说,使用过滤器似乎比仅在
q
中输入任何术语更安全、更好。特别是,因为对于我搜索的项目,我将始终拥有标题和艺术家。但问题是,我总是收到空的回复。即使使用提供的示例查询(是的,那首歌存在,我查了一下(您可以在 Spotify 应用程序的搜索界面中使用字面上的示例查询))。
那么我该如何使用这些过滤器呢?
开头的
remaster
是什么?只是另一个搜索词?
有人有这方面的经验并可以提供帮助吗?
不幸的是,我在网上找不到任何更详细地描述该查询的内容。
为我自己发布更多内容,因为看来您已经弄清楚了这一点。网站上当前的文档很糟糕,在 wayback 机器上还有一些 2008 年的“更广泛的搜索文档”和“一些示例”。我从这篇文章中获取了这些。因此,基于此和我自己的实验,我发现: 不要在请求中使用 HTML URL 编码字符,显然,我无法理解为什么它们出现在示例中。
在过滤器后使用冒号,然后将搜索词用引号引起来。对于您的示例,语法为track:"As It Was" artist:"Harry Styles"
track:Yellow artist:Coldplay
至于
remaster