Flask - Cookie的使用
用户使用浏览器第一次访问服务端时,服务端生成cookie,放在响应response里返回,并保存在用户浏览器里.
from flask import Flask,make_response
@app.route('/set/<name>')
def set_cookie(name):
response = make_response(redirect(url_for('hello')))
response.set_cookie('name',name) # set_cookie视图会在生成的响应报文首部中创建一个Set-Cookie字段,即"Set-Cookie: name=xxx;Path=/"
return response
用户下次访问同一个服务端时,会在header里携带已保存的cookie.
from flask import Flask,request
@app.route('/')
@app.route('/hello')
def hello():
name = request.args.get('name') #如果查询参数里没有name值则从cookie获取
if name is None:
name = request.cookies.get('name','Human') #从Cookie中获取name值
return '<h1>Hello,%s</h1>' % name
因为用户可以直接修改浏览器的cookie值,冒用他人账户,所以直接使用cookie是不安全的.
Flask提供了session对象用来将Cookie数据加密存储.(默认情况下,它会把数据存储在浏览器上一个名为sessi