使用 Spotipy 的 Spotify 身份验证未显示并且我的重定向 uri 拒绝连接?

Spotify authentication using Spotipy not showing and my redirect uri is refusing to connect?

使用 Spotipy(一个使用 Spotify API 访问数据的 spotify 模块)和 Django,我正在尝试使用授权代码流进行身份验证,但我在 运行 时出错使用登录路径。

URL http://localhost/?code=AQDaVeJPteLHVgQG7P41mX5XMmoriJtbpx7vjRYdTXBR64Fal2IMHXQfnSoEdrYrZnYwM-xjyyr_ME_t_gsbqR6-72A4sRBQZ1aaoJd7Xcr2rqT_9aF_kDND0XmZZMhRQzN4oAujH6Uawl9d-tEJmnE_Q-yISGAGTuIHlONwbPEretR9XdPXQg 在我使用 login 路由

后出现错误 localhost refused to connect

urls.py

urlpatterns = [
path("login/" , views.login , name = "login" ),
path("home/", views.home, name= "home"),
path("callback/" , views.callback , name="callback")
]

views.py

#get_authorize_url()方法 returns Spotify API 端点 https://accounts.spotify.com/authorize?client_id=83654ff787fc48c7a38cc7976238628a&response_type=code&redirect_uri=http%3A%2F%2Flocalhost%2F&scope=user-library-read

def login(request):
   authorize_url = oauth.get_authorize_url()
   return redirect(authorize_url)

get_access_token() returns 访问令牌

def callback(request):
    code = request.GET.get("code")
    if code is not None:
        oauth.get_access_token(code)
        return redirect(reverse("home"))
    else:
        return redirect(reverse("login"))


def home(request):
     return HttpResponse("Welcome")

我意识到 http://localhost/ 是错误。在浏览器中输入它,它抛出了同样的错误。将 redirect_uri 更改为 http://127.0.0.1:8000/spotify/callback/ 所以我被重定向回我的服务器和我的回调路由。

您是否尝试过在重定向 uri 定义中使用 127.0.0.1 而不是 localhost?此外,可能与错误本身无关,但您设置的回调 url 似乎缺少 /callback 端点,无法到达正确的位置。