Состояние теряется после входа в систему Apple через python social auth (AuthStateMissing)
Я добавил apple-id в проект django, в котором уже реализован и работает facebook & twitter login.
Из приложения можно попасть в apple, войти в систему, а затем вернуться по пути /player/social/complete/{backend}/
. Здесь возникает AuthStateMissing: Session value state missing
исключение.
Сессии используют signed_cookies
, SESSION_COOKIE_SAMESITE
в настоящее время имеет значение «Lax», но я пытался установить значение None
без изменений.
Помимо настроек клиента/команды/ключа я также определил следующее для Apple ID
SOCIAL_AUTH_APPLE_ID_SCOPE = ["email", "name"]
SOCIAL_AUTH_APPLE_ID_EMAIL_AS_USERNAME = (
True # If you want to use email as username
)
Я пробовал различные варианты, которые я нашел предложенными здесь и на github, например, указание поля state
для хранения сессии. Но ничто не помогает решить эту проблему, а я недостаточно хорошо знаком с работой этой библиотеки - я надеялся, что она будет «просто работать», как обычно предлагают в apple!
Попробуйте добавить следующие переменные в settings.py
SOCIAL_AUTH_REDIRECT_IS_HTTPS = True
Вы можете попробовать и это, если проблема не исчезнет
SOCIAL_AUTH_FIELDS_STORED_IN_SESSION = ['state']
SESSION_COOKIE_SECURE = False