#python #django #authentication #cookies
#python #django #аутентификация #файлы cookie
Вопрос:
Например, у меня есть два приложения django, которые развернуты в двух разных поддоменах:
- data.mysite.com
- i.mysite.com
Оба сайта используют одну и ту же среду аутентификации django и тому подобное, устанавливая вызываемый файл cookie sessionid
. Я могу прочитать файл cookie с текущего сайта, используя:
def my_view(request):
# suppose this view is within the i.mysite.com application
i_session_id = request.COOKIES['sessionid']
data_session_id = ? # how to get this?
Но тогда как я мог получить файлы cookie из
Ответ №1:
Если вы хотите иметь общую аутентификацию между вашими 2 поддоменами, вам необходимо установить сеанс в .mysite.com
домене. Затем, когда вы запрашиваете data.mysite.com
, будет включен этот файл cookie, то же самое для i.mysite.com
домена. Итак, в settings.py:
SESSION_COOKIE_DOMAIN=".mysite.com"
Комментарии:
1. допустим, у меня есть два
sessionid
s, установленных тогда. Как бы мне захватить их оба?2. Если вы имеете в виду, что в каждом проекте django у вас другое имя cookie, тогда вы должны получить эти кули по их именам, вот и все. Если у вас одинаковое имя файла cookie в обоих проектах, один из них будет переопределять другой при установке.