Я использую django 1.8.3 и django-allauth 0.21.0, и я хотел бы, чтобы пользователь мог войти в систему, используя, например, их аккаунт Google, не выходя из страницы. Причина в том, что есть некоторые ценные данные со страницы, с которой они вступают в систему, из которой необходимо выложить после того, как они вошли в систему. У меня уже есть это нормально, используя создание локальной учетной записи, но у меня возникают проблемы с социальными потому что многие из социальных сетей направляют пользователя на отдельную страницу, чтобы запрашивать разрешения и т. д. В идеале, у меня было бы все это в модальном виде на моей странице, которое закрывается после успешной проверки подлинности.Социальный вход при использовании django-allauth, не выходя из страницы
Единственное возможное (хотя и не идеальное) решение, о котором я могу сейчас думать, это заставить страницу аутентификации открыть другую вкладку (например, используя ссылку target = "_ blank" в ссылке), а затем предложив пользователю нажмите на что-то в исходном окне после завершения проверки подлинности на другой вкладке.
Однако проблема заключается в том, что я не могу придумать, как исходная страница могла узнать, какая учетная запись была создана ранее анонимным пользователем, не обновляя страницу, что приведет к важным данным, которые должно быть отправлено на удержание.
Есть ли у кого-нибудь идеи о том, как я мог бы выполнить одно из двух решений, описанных выше?
Связанный: http://stackoverflow.com/questions/16162108/implementing-ajax-requests-response-with-django-allauth –
@GlynJackson Да, я фактически использовал некоторую информацию из этого вопроса, чтобы реализовать локальную регистрацию/(у меня есть работа), но у меня проблемы с переходом от этого к социальному. Если вы имеете в виду pennersr, говоря, что я «не повезло», я не совсем готов отказаться от этого! –
Разве это не канонический вариант использования для локального хранилища? В зависимости от характера данных yiu также может кодировать его в параметр «code», который сохраняется во время танца OAuth. – pinoyyid