chrome 和 firefox 中的 Cookie 过期时间是否不同?
Does Cookie expiration differs in chrome and firefox?
我一直在使用 cookie。所以看了文档和一些博客,并像下面一样对 cookie 进行编码 -->
def ProouctDetailView(request, slug):
item = Item.objects.get(slug=slug)
response = render(request, 'product.html', {'item' : item } )
temp = request.COOKIES.get('pro', None)
response.set_cookie('pro','{0} {1}'.format(temp, slug))
return response
我要拿饼干了。由于 django 不在单个 cookie 中提供设置 multipe 值,我将所有值作为一个字符串(由 space 分隔)并使用 split() 方法拆分它们。然后我过滤为最近查看的部分生成查询集
def HomeListView(request):
items = Item.objects.all()
recent = None
try:
slug = request.COOKIES.get('pro').split(" ")
recent = Item.objects.filter(slug__in= slug)
except:
pass
return render(request, 'home.html', {'items': items, 'recent':recent})
从 cookie 中,我得到的是项目对象的 slug,以便稍后我可以在最近查看的部分中显示它们,因为我没有在我的 set_cookie 中提供任何 max_age 字段( ) 方法它将设置为 none 这意味着当用户关闭浏览器会话时此 cookie 将自动过期,意味着关闭浏览器,对吗?
但是即使我关闭 chrome 并重新启动 chrome,最近查看的部分也不会过期。它还在那里。所以 cookie 没有在 chrome 过期。但是如果我使用 firefox,那么当我重新启动 firefox 时 cookie 就会过期。
一旦服务器将其过期日期设置为过去的日期,Cookie 应立即过期。
在浏览器重新启动之前,Cookie 仍然被认为是有效的。
https://bugs.chromium.org/p/chromium/issues/detail?id=113073
我一直在使用 cookie。所以看了文档和一些博客,并像下面一样对 cookie 进行编码 -->
def ProouctDetailView(request, slug):
item = Item.objects.get(slug=slug)
response = render(request, 'product.html', {'item' : item } )
temp = request.COOKIES.get('pro', None)
response.set_cookie('pro','{0} {1}'.format(temp, slug))
return response
我要拿饼干了。由于 django 不在单个 cookie 中提供设置 multipe 值,我将所有值作为一个字符串(由 space 分隔)并使用 split() 方法拆分它们。然后我过滤为最近查看的部分生成查询集
def HomeListView(request):
items = Item.objects.all()
recent = None
try:
slug = request.COOKIES.get('pro').split(" ")
recent = Item.objects.filter(slug__in= slug)
except:
pass
return render(request, 'home.html', {'items': items, 'recent':recent})
从 cookie 中,我得到的是项目对象的 slug,以便稍后我可以在最近查看的部分中显示它们,因为我没有在我的 set_cookie 中提供任何 max_age 字段( ) 方法它将设置为 none 这意味着当用户关闭浏览器会话时此 cookie 将自动过期,意味着关闭浏览器,对吗?
但是即使我关闭 chrome 并重新启动 chrome,最近查看的部分也不会过期。它还在那里。所以 cookie 没有在 chrome 过期。但是如果我使用 firefox,那么当我重新启动 firefox 时 cookie 就会过期。
一旦服务器将其过期日期设置为过去的日期,Cookie 应立即过期。
在浏览器重新启动之前,Cookie 仍然被认为是有效的。
https://bugs.chromium.org/p/chromium/issues/detail?id=113073