Flask 如何删除 Cookie ?
在Flask中,删除cookie主要通过设置相应的响应对象,并利用该对象来清除特定的cookie。这通常在响应发送回客户端时进行。删除cookie的基本方法是设置cookie的过期时间为过去的某个时间,这样浏览器会自动删除这个cookie。
下面是一个具体的示例代码,展示如何在Flask应用中删除一个名为`session_id`的cookie:
```python
from flask import Flask, request, make_response
app = Flask(__name__)
@app.route('/delete_cookie')
def delete_cookie():
response = make_response("Cookie 'session_id' has been deleted")
response.set_cookie('session_id', '', expires=0)
return response
if __name__ == "__main__":
app.run(debug=True)
```
在这个例子中:
1. 我们首先从Flask模块导入了`Flask`, `request`, 和 `make_response`。
2. 创建了一个Flask应用实例。
3. 定义了一个路由`/delete_cookie`,当这个路由被访问时,将会执行`delete_cookie`函数。
4. 在`delete_cookie`函数中,我们首先创建了一个响应对象,其中包含了一条消息指示cookie已被删除。
5. 通过`response.set_cookie()`方法,我们设置了cookie `session_id` 的值为空字符串,并将过期时间设置为0。这会告诉浏览器立即删除这个cookie。
6. 最后,函数返回响应对象,包含了删除cookie的操作。
这种方法通过设置cookie的过期时间为0来确保客户端删除cookie,是一种通用且广泛使用的方法。
阅读 15 · 8月14日 01:13