django-allauth) 如何从 url 中的访问代码获取访问令牌?
django-allauth) How to get access token from access code in url?
我正在尝试将社交登录添加到我的 django-rest-framework 应用程序,但我遇到了这个问题,需要一些帮助。
我用django-allauth
得到code
,用来得到access token
。
登录流程:请求代码(GET)-> 响应-> 请求令牌(POST)-> 响应
因此,在我登录社交帐户(例如 Facebook)后,单击 authorize my app
按钮,我将获得如下访问代码:
"GET /accounts/kakao/login/callback/?code=1cH2huI2SuGuZxY4wYHU8hieeIXAhhL_XTpTqdR0g5DV1Zn8smcGzheW4IqakEEzNshfMAo9dVoAAAFqzwxacQ&state=uqTv1puHiHuy HTTP/1.1" 200 487
但我只是不知道如何从这个 url 获取访问令牌!我应该在 view.py 文件中创建新视图 class 吗?我应该制作一个新的 url 来获取访问令牌吗??
我认为我们需要您的意见来回答这个问题,但我认为这可能有效:
将这样的视图添加到 views.py
:
def social_login(request):
token = request.GET["code"]
"""Do Some Thing"""
将此添加到您的 url.py
:
path('/accounts/kakao/login/callback', views.social_login)
我正在尝试将社交登录添加到我的 django-rest-framework 应用程序,但我遇到了这个问题,需要一些帮助。
我用django-allauth
得到code
,用来得到access token
。
登录流程:请求代码(GET)-> 响应-> 请求令牌(POST)-> 响应
因此,在我登录社交帐户(例如 Facebook)后,单击 authorize my app
按钮,我将获得如下访问代码:
"GET /accounts/kakao/login/callback/?code=1cH2huI2SuGuZxY4wYHU8hieeIXAhhL_XTpTqdR0g5DV1Zn8smcGzheW4IqakEEzNshfMAo9dVoAAAFqzwxacQ&state=uqTv1puHiHuy HTTP/1.1" 200 487
但我只是不知道如何从这个 url 获取访问令牌!我应该在 view.py 文件中创建新视图 class 吗?我应该制作一个新的 url 来获取访问令牌吗??
我认为我们需要您的意见来回答这个问题,但我认为这可能有效:
将这样的视图添加到 views.py
:
def social_login(request):
token = request.GET["code"]
"""Do Some Thing"""
将此添加到您的 url.py
:
path('/accounts/kakao/login/callback', views.social_login)