from flask import Flask app = Flask(__name__)
from flask import Flask, make_response, request @app.route('/') def hello(): response = make_response('ok') #先要建立一个response对象 response.set_cookie('key','value') #用set_cookie设置cookies cookies = request.cookies #获取全部cookies且以字典的形式的返回 cookies_key = request.cookies['key'] #由于返回是cookies的字典对象因此咱们能够用字典取值取出指定的cookie return response
app.secret_key="asdas" #值随便
html
from flask import Flask, make_response, request,session app.config['SESSION_COOKIE_NAME']="session_key" #这是配置网页中sessions显示的key @app.route('/') def hello(): session['username'] = 'xxx' #设置 #session自己就是个字典至关于把一个username:xxx键值对丢进去,而后Flask会把整个字典结合secret_key进行加密 #1.生成一个随机的字符串 #2 往数据库存 #3 写入cookie返回浏览器 sessions = session #获取全部session session_username =session['username'] #获取指定session session.pop('username') #删除session原理和字典的删除方式同样 return 'ok'
key, 键 value='', 值 max_age=None, 超时时间 cookie须要延续的时间(以秒为单位)若是参数是\ None`` ,这个cookie会延续到浏览器关闭为止 expires=None, 超时时间(IE requires expires, so set it if hasn't been already.) path='/', Cookie生效的路径,/ 表示根路径,特殊的:根路径的cookie能够被任何url的页面访问,浏览器只会把cookie回传给带有该路径的页面,这样能够避免将cookie传给站点中的其余的应用。 domain=None, Cookie生效的域名 你可用这个参数来构造一个跨站cookie。如, domain=".example.com"所构造的cookie对下面这些站点都是可读的:www.example.com 、 www2.example.com 和an.other.sub.domain.example.com 。若是该参数设置为 None ,cookie只能由设置它的站点读取 secure=False, 浏览器将经过HTTPS来回传cookie httponly=False 只能http协议传输,没法被JavaScript获取(不是绝对,底层抓包能够获取到也能够被覆盖)
这些参数全都再app.config中进行设置python
'SESSION_COOKIE_NAME': 'session', 'SESSION_COOKIE_DOMAIN': None, 'SESSION_COOKIE_PATH': None, 'SESSION_COOKIE_HTTPONLY': True, 'SESSION_COOKIE_SECURE': False, 'SESSION_REFRESH_EACH_REQUEST': True,
详细能够参照:https://www.cnblogs.com/pythonywy/p/11594420.html数据库