如何在子域中使用Django的会话引擎?

问题描述

我需要从网站的子域中访问用户<template lang='pug'> ThePage Item </template> <script> import Item from '~/components/Item' export default { components: { Item } head() { return { title: 'Child Title,Meta: [{ hid: 'description',name: 'description',content: 'Child description' }] } } </script> ,因此我可以启用“单一登录”,但是尽管更改了{{1 }}。

MRE

如果要重现该错误,则需要修改sessionid以包含SESSION_COOKIE_DOMAIN = '.localtest'。另外请注意,该功能仅在macOS上进行过测试,因此只能在YMMV上进行测试。

urls.py:

/etc/hosts

settings.py:

localtest

当我尝试通过内置from django.contrib.auth import views from django.contrib.auth.decorators import login_required from django.urls import path @login_required def home_view(request): raise Exception('user was logged in') urlpatterns = [ path('login',views.LoginView.as_view(),name='login'),path('home',home_view,name='home'),] 登录用户时,登录成功,并且该用户重定向BASE_DOMAIN = 'localtest' SESSION_COOKIE_DOMAIN = '.' + BASE_DOMAIN LOGIN_URL = '/login' LOGIN_REDIRECT_URL = '/home' (与登录位于同一域)。登录重定向后,用户的会话将被删除LoginView被触发,将用户带回到登录页面

为什么会这样?这是一个错误,还是我缺少什么?

如果要在计算机上重现此内容,请使用repo数据库中有一个测试用户,设置了用户名/home密码login_required

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)