Django在cookie中没有sessionid



我使用Mongo Engine/REST框架和Django 1.6。

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

视图.py

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

设置.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',
)

有什么想法吗?

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

Django只在需要的时候发送cookie。如果你不设置任何会话数据,它就不会发送会话cookie。

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

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

SESSION_COOKIE_HTTPONLY=False

最新更新