如何通过Spotify API的fields参数仅获取播放列表曲目艺术家名称?
解决Spotify Web API过滤艺术家名称的问题
我明白你遇到的这个小坑——Spotify的fields参数在处理多层嵌套数组时,括号嵌套的写法偶尔会出现不生效的情况,尤其是针对track下嵌套的artists数组场景。
正确的参数写法
你可以换成点分隔的路径语法来指定要提取的字段,这种写法在处理嵌套结构时更稳定可靠:
fields=items.added_at,items.track.artists.name
为什么原来的写法不生效?
Spotify的fields参数解析逻辑对嵌套数组的括号写法存在兼容性问题,当层级嵌套超过两层时(比如items→track→artists→name),括号嵌套的规则容易被API忽略。而点分隔的路径是更直接的字段定位方式,能让API准确识别你要筛选的目标字段。
预期响应效果
使用这个参数后,返回的JSON会只保留你需要的字段,示例如下:
{ "items": [ { "added_at": "2017-08-24T14:56:20Z", "track": { "artists": [ { "name": "Luis Fonsi" }, { "name": "Daddy Yankee" } ] } } ] }
扩展提示
如果后续需要额外字段(比如艺术家的id),直接在路径后追加即可:
fields=items.added_at,items.track.artists.name,items.track.artists.id
内容的提问来源于stack exchange,提问作者Bee
相关产品推荐
相关产品推荐

