我使用allauth和rest-auth在Django中实现了苹果登录。这与Google登录的实现方式相同,而且完美运行。
views.py
class AppleLogin(SocialLoginView):
adapter_class = AppleOAuth2Adapter
urls.py
urlpatterns = [
path("auth/apple/", AppleLogin.as_view(), name="apple-login"),
]
pip 版本
Django==2.2.17
django-allauth==0.43.0
django-rest-auth==0.9.3
djangorestframework==3.8.2
djangorestframework-jwt==1.11.0
当我进行以下测试时,我得到了 " KeyError: 'id_token' " 这个错误,这是错误的来源:https://github.com/pennersr/django-allauth/blob/master/allauth/socialaccount/providers/apple/views.py#L92。 我不知道如何修复这个错误。谢谢你的帮助!
curl -X POST 'https://.../auth/apple/' \
-d 'access_token=AUTHENTICATION_CODE'
or
curl -X POST 'https://.../auth/apple/' \
-d 'id_token=ID_TOKEN' \
-d 'access_token=AUTHENTICATION_CODE'
from allauth.socialaccount.providers.Apple.views import AppleOAuth2Adapter ModuleNotFoundError: No module named 'allauth.socialaccount.providers.Apple'
。 - Kwall