Last.fm API返回错误图片问题:track.search等接口图片链接异常
Last.fm接口返回占位图问题的解决方案
问题原因
调用track.search或user.getLovedTracks接口时返回的图片链接是带星星的白色占位图,而官网和track.getInfo接口能拿到正常封面,核心原因是:
- 这两个列表类接口为了优化响应速度,默认返回的是曲目默认占位资源,不会实时关联完整的专辑封面元数据;
- 官网页面和
track.getInfo接口会拉取曲目完整信息,包含已验证的专辑封面链接。
解决方法
1. 二次调用track.getInfo获取正确封面
对track.search/user.getLovedTracks返回的每首曲目,提取曲目名称和艺术家名称,调用track.getInfo接口,从返回结果的album.image字段中获取正常的图片链接。
示例流程:
- 从列表接口拿到曲目核心信息:
{"name": "Без ключа", "artist": {"name": "Pharaoh"}} - 调用
track.getInfo接口(传入参数track=Без ключа和artist=Pharaoh) - 从响应的
album.image数组中选择对应尺寸的链接(如medium尺寸的https://lastfm.freetls.fastly.net/i/u/64s/6e92fe0cff920f671ee5eb4e2f0f4e59.png)
2. 批量处理优化(可选)
如果需要处理大量曲目,建议批量收集曲目信息后统一调用track.getInfo,减少接口请求次数,避免触发Last.fm的API速率限制。
注意事项
- 调用
track.getInfo时需确保曲目名称和艺术家名称的准确性,避免因拼写或格式差异导致返回错误信息; - 优先选择
extralarge或large尺寸的图片链接,适配不同展示场景。
内容的提问来源于stack exchange,提问作者yxtiblya
相关产品推荐
相关产品推荐

