此问题特定于与Django应用程序集成的python-social-auth OAuth框架。它涉及交互的回调部分。
问题:使用GitHub提供程序成功验证后,对https:/// complete / github /?code = 583etc& redirect_state = 8f5b9etc的响应指示重定向到我的SOCIAL_AUTH_LOGIN_ERROR_URL并显示“Session State Value Missing”错误。
我想要的是我的授权用户进入SOCIAL_AUTH_LOGIN_REDIRECT_URL
应用程序在gunoku / 19.3.0的herps下运行在https://
下在http //:下的WSGIServer / 0.1 Python / 2.7.6上相同的应用程序成功(意味着相同的GitHub用户可以在此环境中对应用程序进行身份验证。)
堆栈跟踪,http跟踪,Django设置转储:all here。
管道和后端集成显示在不同环境中有效。
AUTHENTICATION_BACKENDS = (
'social.backends.github.GithubOAuth2',
'django.contrib.auth.backends.ModelBackend',
)
SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'social.pipeline.social_auth.social_user',
'social.pipeline.social_auth.associate_user',
'social.pipeline.social_auth.load_extra_data',
'apps.accounts.pipeline.get_user_teams',
'social.pipeline.user.user_details',
)
协议是https://,目前正在应用这些可能相关的设置。我已经尝试了几个真/假的组合与前4个。
SESSION_COOKIE_SECURE = 'True'
SESSION_COOKIE_HTTPONLY = 'True'
CSRF_COOKIE_SECURE = 'True'
CSRF_COOKIE_HTTPONLY = 'True'
SOCIAL_AUTH_REDIRECT_IS_HTTPS = 'True'
类似问题here的解决方案无法解决。
欢迎专家建议!
非常感谢!