gpt4 book ai didi

django - 从 python-social-auth 后端获取 DRF token

转载 作者:行者123 更新时间:2023-12-04 07:40:29 24 4
gpt4 key购买 nike

我正在尝试将社交身份验证集成到我的 DRF 后端。我决定选择 python-social-auth .如果我通过 Django(和 HTML View )提供我的社交登录,我可以看到我的登录成功。我还认为我可以在成功进行社交身份验证后重定向,如概述 here .

到目前为止,我的前端(Nuxt 应用程序)使用的是 DRF tokens .尽管:

  1. 我可以为社交账户创建有效的 token 。
  2. 我的前端可以将用户重定向到 -> 使用 OAuth 站点完成授权,例如Google、Twitter -> 返回前端。

我是否有可能以某种方式设法将成功通过身份验证的用户重定向到前端,使用关联且有效的 DRF token 作为查询参数?

最佳答案

你可以,但这不是微不足道的。这是可能的,因为检索 URL(成功或错误的)的机制被委托(delegate)给 strategies setting() method ,它最终调用 get_setting() on final implementations 。您可以覆盖此方法以添加您的自定义逻辑。

这些步骤应该让你上路:

  1. 定义自定义策略

    from social_django.strategy import DjangoStrategy


    class CustomStrategy(DjangoStrategy):
    def get_setting(self, name):
    if name == 'LOGIN_REDIRECT_URL':
    token = get_drf_token()
    return f'/?toke={token}'
    else:
    return super().get_setting(name)
  2. 将您的 SOCIAL_AUTH_STRATEGY 设置指向这个新策略(导入路径语法)

关于django - 从 python-social-auth 后端获取 DRF token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67508421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com