【问题标题】:Django no sessionid in cookieDjango 在 cookie 中没有 sessionid
【发布时间】:2015-02-24 12:55:12
【问题描述】:

我在 Django 1.6 中使用 Mongo 引擎/REST 框架。

我所需要的只是让客户在点击其中一个视图时获得一个 sessionid。但是目前 cookie 中没有 sessionid。

views.py

@csrf_exempt
def updateInput(request):
    return HttpResponse("view has been hit")

settings.py

MIDDLEWARE_CLASSES = Common.MIDDLEWARE_CLASSES + ('django.contrib.sessions.middleware.SessionMiddleware',)
INSTALLED_APPS += ('django.contrib.sessions',)

SESSION_ENGINE = 'mongoengine.django.sessions'
SESSION_SERIALIZER = 'mongoengine.django.sessions.BSONSerializer'

DJANGO_APPS = (
    'django.contrib.sessions',
)

有什么想法吗?

【问题讨论】:

    标签: python django rest django-1.6


    【解决方案1】:

    根据the Django docs,用户在必要之前没有会话:

    Django 仅在需要时发送 cookie。如果您不设置任何会话数据,则不会发送会话 cookie。

    你需要设置一些会话数据,然后你会在cookie中找到sessionid

    【讨论】:

    【解决方案2】:

    我知道这个答案对您没有帮助,但肯定会帮助像我这样遇到您的问题的人。如果您使用来自 javascript 的 cookie,例如作为 ajax 请求的一部分,则需要在 settings.py 中设置以下内容

    SESSION_COOKIE_HTTPONLY=False
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-31
      • 1970-01-01
      • 1970-01-01
      • 2017-10-17
      • 1970-01-01
      • 2012-11-04
      • 2013-07-02
      • 1970-01-01
      相关资源
      最近更新 更多