【问题标题】:Django using sessions and cookies in the same view functionDjango 在同一个视图函数中使用会话和 cookie
【发布时间】:2021-08-17 16:09:25
【问题描述】:

我正在尝试设置 cookie 并同时使用会话,但是当我设置 cookie 时,它​​没有检测到网站上的 cookie。我不知道我做错了什么,所以请帮助我。谢谢。

view.py

from django.http import HttpResponse

def session(request):
    num_visits = request.session.get('num_visits', 0) + 1
    request.session['num_visits'] = num_visits
    resp = HttpResponse('View Count=' +str(num_visits) + ' e78e39ea')
    resp.set_cookie('dj4e_cookie', 'e78e39ea', max_age=1000)
    resp.set_cookie('zap', 42)
    return HttpResponse(resp)

urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('', views.session),
]

【问题讨论】:

    标签: django django-views session-cookies django-sessions


    【解决方案1】:

    您应该返回响应,而不是将其包装在 另一个响应中:

    def session(request):
        num_visits = request.session.get('num_visits', 0) + 1
        request.session['num_visits'] = num_visits
        resp = HttpResponse(f'View Count={num_visits} e78e39ea')
        resp.set_cookie('dj4e_cookie', 'e78e39ea', max_age=1000)
        resp.set_cookie('zap', 42)
        return resp  # ← return the response itself

    【讨论】:

      猜你喜欢
      • 2020-05-13
      • 2019-07-19
      • 2011-07-05
      • 2015-02-10
      • 1970-01-01
      • 1970-01-01
      • 2013-07-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多