Google認証登録/ログインフォームでユーザーをログインするFlutterアプリの認証APIを作成しようとしています。これを実行するためにこれを続けました チュートリアル を実現します。
これまでのところ、チュートリアルはGoogleではなくGitHubサインインに基づいていることを除いて。ステップ「接続」ステップまで上に取り組むことができました。リダイレクトからcode
を取得できますが、アクセスしたときhttp://127.0.0.1:8000/auth/google/
私はそれが2つのフィールドを求めているのを見ます(access_token
、code
)。私が情報を投稿しようとすると、私は次のエラーが発生しました:
"non_field_errors": [
"View is not defined, pass it as a context variable"
]
_
これを試して:
class GoogleLogin(SocialLoginView):
adapter_class = GoogleOAuth2Adapter
client_class = OAuth2Client
serializer_class = SocialLoginSerializer
def get_serializer(self, *args, **kwargs):
serializer_class = self.get_serializer_class()
kwargs['context'] = self.get_serializer_context()
return serializer_class(*args, **kwargs)
google_login = GoogleLogin.as_view()
_
これはDjangorestFramework => 3.12のソリューション:DjangorestFramework <= 3.11.0にダウングレードし、すべてが大丈夫になるはずです。