烧瓶:如何删除饼干? [英] Flask: How to remove cookies?
本文介绍了烧瓶:如何删除饼干?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
from flask import make_response
@ app.route('/')
def index():
resp = make_response(render_template(...))
resp.set_cookie('username','the username')
return resp
但我该如何删除它们?没有remove_cookie方法。我试过:
if request.cookies.get('sessionID');
request.cookies.pop('sessionID',None)
但事实证明, request.cookies对象是不可变的。我该怎么办?
解决方案
没有用于删除cookie的HTTP头。传统上,您只需将cookie设置为过期的过期日期的虚拟值,即可立即过期。
resp.set_cookie ('sessionID','',expires = 0)
这会将会话ID cookie设置为在$ unixtime 0
过期的空字符串,这几乎肯定是过去的。
I set cookies with the code suggested in the docs:
from flask import make_response
@app.route('/')
def index():
resp = make_response(render_template(...))
resp.set_cookie('username', 'the username')
return resp
But how do I remove them? There is no remove_cookie method. I tried:
if request.cookies.get('sessionID');
request.cookies.pop('sessionID', None)
but it turns out that the request.cookies object is immutable. What do I do?
解决方案
There's no HTTP header for deleting a cookie. Traditionally you just set the cookie to a dummy value with an expiration date in the past, so it immediately expires.
resp.set_cookie('sessionID', '', expires=0)
This will set the session id cookie to an empty string that expires at unixtime 0
, which is almost certainly in the past.
这篇关于烧瓶:如何删除饼干?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文