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

请求Spotify用户认证返回401:未提供令牌问题求助

问题分析与解决方案

核心错误是授权端点使用错误:你当前重定向到的是api.spotify.com/authorize,但Spotify授权码流程的第一步授权页面端点应该是accounts.spotify.com/authorize。

api.spotify.com是Spotify的资源API端点,所有请求都需要携带有效访问令牌,这就是你收到No token provided 401错误的原因;而accounts.spotify.com才是负责OAuth2授权流程的端点,第一步获取授权码的请求不需要携带token。

修正后的Ktor路由代码

get("/login") {
    call.respondRedirect {
        protocol = URLProtocol.HTTPS
        host = "accounts.spotify.com" // 修正此处的host
        encodedPath = "/authorize"
        parameters.apply {
            append("response_type", "code")
            append("client_id", Settings.CLIENT_ID)
            append("redirect_uri", Settings.REDIRECT_URI)
        }
    }
}

额外检查点

  • 确保Settings.REDIRECT_URI的值与Spotify开发者后台配置的完全一致,包括协议(http/https)、端口、路径,不能有多余的斜杠或大小写差异
  • 客户端密钥(Client Secret)不需要在第一步授权请求中传递,只有在后续用授权码交换访问令牌的请求里,才需要通过Basic Auth(将CLIENT_ID:CLIENT_SECRET Base64编码后放在Authorization头)或者表单参数client_secret传递

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 16:30:45