我正在开发一款可能成为某种自助应用程序的应用。虽然我是python和django的新手,但它正在顺利进行。我的allauth注册流程使用社交登录(目前是Google)或“本地”电子邮件地址和密码。
如果我使用Google帐户登录,然后注销,我会被重定向到登录页面,很酷。问题是,我并没有真正退出Google帐户。如果我点击社交登录链接,那么我就回到了用户区域,而不需要输入密码。
allauth有一种方法可以注销并删除社交认证令牌吗?我需要捕获注销信号并自己查找/删除令牌吗?
我正在开发一款可能成为某种自助应用程序的应用。虽然我是python和django的新手,但它正在顺利进行。我的allauth注册流程使用社交登录(目前是Google)或“本地”电子邮件地址和密码。
如果我使用Google帐户登录,然后注销,我会被重定向到登录页面,很酷。问题是,我并没有真正退出Google帐户。如果我点击社交登录链接,那么我就回到了用户区域,而不需要输入密码。
allauth有一种方法可以注销并删除社交认证令牌吗?我需要捕获注销信号并自己查找/删除令牌吗?
action
参数赋值"reauthenticate"。作为新手,我不确定我是否已经按照Python/Django的方式添加了它,但我已经编辑了模板:myProject/templates/allauth/socialaccount/snippets/provider_list.html
action=reauthenticate
,例如:{% load socialaccount %}
{% get_providers as socialaccount_providers %}
{% for provider in socialaccount_providers %}
{% if provider.id == "openid" %}
{% for brand in provider.get_brands %}
<li>
<a title="{{brand.name}}"
class="socialaccount_provider {{provider.id}} {{brand.id}}"
href="{% provider_login_url provider.id openid=brand.openid_url process=process action='reauthenticate' %}"
>{{brand.name}}</a>
</li>
{% endfor %}
{% endif %}
<li>
<a title="{{provider.name}}" class="socialaccount_provider {{provider.id}}"
href="{% provider_login_url provider.id process=process scope=scope auth_params=auth_params %}">{{provider.name}}</a>
</li>
{% endfor %}
AUTH_PARAMS['access_type']
设置为offline
,以便接收刷新令牌。" https://django-allauth.readthedocs.io/en/latest/providers.html#google - Flimm