GoogleOAuth2的社交应用程序设置重定向URL不起作用?



我正在使用social-app-django GoogleOAuth2后端,遇到了redirect_uri的问题

我设法设置了INSTALLED_APP、AUTHENTICATION_BACKENDS、url.py 并在设置中添加了以下 3

SOCIAL_AUTH_GOOGLE_OAUTH2_KEY='MY KEY'
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET='MY SECRET'
LOGIN_REDIRECT_URL='http://localhost:8000/api/auth/complete/google-oauth2/'

我已 http://localhost:8000/api/complete/google-oauth2/添加到我的谷歌授权重定向 URI 中。

我通过访问 http://127.0.0.1:8000/login/google-oauth2/触发了身份验证登录(是的,我的项目在前端使用 react,所以不使用 Django 模板(。

Problem is I always get this error
Error: redirect_uri_mismatch
The redirect URI in the request, http://127.0.0.1:8000/complete/google-oauth2/, does not match the ones authorized for the OAuth client. To update the authorized redirect URIs, visit: ....

生成的身份验证 url 中的redirect_url始终 http://127.0.0.1:8000/complete/google-oauth2/,如果我将其替换为我在 Google 控制台中配置的 on,那么它可以工作。所以我猜它一定是与设置有关的东西。

看起来重定向 url 设置确实有效,知道出了什么问题吗?请帮忙!

您可以在auth_params中添加redirect_uri,并在设置文件中添加access_type

SOCIALACCOUNT_PROVIDERS = {
'google': {
'SCOPE': [
'profile',
'email',
],
'AUTH_PARAMS': {
'access_type': 'online',
'redirect_uri': 'http://127.0.0.1:8000/<custom-url>'
}
}
}

最新更新