Доступ к cookie из другого поддомена

#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 в обоих проектах, один из них будет переопределять другой при установке.