Django Social Auth を使用して Twitter サインインを実装しようとしています。フォーム (DOB、電子メールなど) を使用してユーザーから追加の詳細を収集する部分的なパイプラインを追加しました。
私の問題は、ユーザーが既に存在する場合、このパイプラインをスキップしたいということです。ただし、これを実行しようとすると、AuthTokenError「トークン エラー: 承認されていないトークンが見つかりません」というエラーが表示され、その理由がわかりません。
問題を引き起こしているコードは次のとおりです。
def gather_extra_data(backend, details, uid, request, user=None, *args, **kwargs):
social_user = UserSocialAuth.get_social_auth(backend.name, uid)
if social_user:
return redirect('socialauth_complete', backend.name)
if not details.get('email'):
if not request.session.get('saved_email'):
return redirect(request_extra, backend=backend.name)
else:
details['email'] = request.session['saved_email']
details['password'] = request.session['password']
details['first_name'] = request.session['first_name']
details['last_name'] = request.session['last_name']
details['dob'] = request.session['dob']
details['gender'] = request.session['gender']
details['avatar_url'] = request.session['avatar_url']