You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python调用Spotify API发POST队列歌曲请求报错缺少uri参数怎么办

问题原因
  • 参数传递位置错误:Spotify的Add to Queue接口要求uri为查询参数,需要拼接在URL的查询字符串中,你当前将参数放在请求体中传递,服务端无法读取到对应参数,因此返回必填参数缺失报错。
  • 请求格式不匹配:你声明了Content-Type: application/json请求头,但使用requests的data参数传参,data参数默认会将数据序列化为application/x-www-form-urlencoded格式,和声明的请求格式不符,进一步导致参数解析失败。
修复方案

将uri参数通过requests的params参数传递,移除不必要的请求体数据和Content-Type请求头,修复后的代码如下:

def queue_song(session_id):
    song_uri='spotify:track:5RwV8BvLfX5injfqYodke9'
    tokens = get_user_tokens(session_id)
    headers = {
        'Authorization': "Bearer " + tokens.access_token,
    }
    url = BASE_URL + 'player/queue'
    params = {
        'uri': song_uri
    }
    # 该POST接口无需请求体,参数全部放在查询字符串中传递
    response = requests.post(url, headers=headers, params=params).json()
    print(response)

内容的提问来源于stack exchange,提问作者GJT Praveen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 14:45:02