django-allauth)如何从url中的访问代码获取访问令牌?

时间:2019-05-19 08:08:13

标签: django django-rest-framework django-allauth

我正在尝试将社交登录名添加到我的django-rest-framework应用程序中,但是我陷于这个问题,需要一些帮助。

我用django-allauth来获取code,它是用来获取access token的。

登录流程:请求代码(GET)->响应->请求令牌(POST)->响应

API reference here

因此,登录到社交帐户(例如Facebook)后,点击authorize my app按钮,我将获得如下访问代码:

"GET /accounts/kakao/login/callback/?code=1cH2huI2SuGuZxY4wYHU8hieeIXAhhL_XTpTqdR0g5DV1Zn8smcGzheW4IqakEEzNshfMAo9dVoAAAFqzwxacQ&state=uqTv1puHiHuy HTTP/1.1" 200 487

但是我只是不知道如何从该URL获取访问令牌!我应该在view.py文件中创建新的视图类吗?我应该为获取访问令牌创建新的网址吗?

1 个答案:

答案 0 :(得分:1)

我认为我们需要您的观点来回答这个问题,但我认为这可能有效:

views.py添加这样的视图:

def social_login(request):
    token = request.GET["code"]
    """Do Some Thing"""

将此添加到您的url.py

path('/accounts/kakao/login/callback', views.social_login)