Django 在 cookie 中没有 sessionid
Django no sessionid in cookie
我正在使用 Mongo Engine/REST Framework with Django 1.6。
我所需要的只是让客户在点击其中一个视图时获得一个 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',
)
有什么想法吗?
根据 the Django docs,用户只有在必要时才能进行会话:
Django only sends a cookie if it needs to. If you don’t set any session data, it won’t send a session cookie.
您需要设置一些会话数据,然后您会在cookie中找到sessionid
。
我知道这个答案对您没有帮助,但肯定会对像我一样遇到您的问题的人有所帮助。如果您使用来自 javascript 的 cookie,例如作为 ajax 请求的一部分,您需要在 settings.py
中设置以下内容
SESSION_COOKIE_HTTPONLY=False
我正在使用 Mongo Engine/REST Framework with Django 1.6。
我所需要的只是让客户在点击其中一个视图时获得一个 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',
)
有什么想法吗?
根据 the Django docs,用户只有在必要时才能进行会话:
Django only sends a cookie if it needs to. If you don’t set any session data, it won’t send a session cookie.
您需要设置一些会话数据,然后您会在cookie中找到sessionid
。
我知道这个答案对您没有帮助,但肯定会对像我一样遇到您的问题的人有所帮助。如果您使用来自 javascript 的 cookie,例如作为 ajax 请求的一部分,您需要在 settings.py
中设置以下内容SESSION_COOKIE_HTTPONLY=False