cookie

cookie
Cookie 是保存存在浏览器短的键值对
服务端可以在用户浏览器写Cookie ---->响应头里面有Set-Cookie

登陆之后---->浏览器每次发请求的时候会携带Cookie

cookie应用:登录,免登陆,

服务器发给客户端-----》响应体:response.set_cookie("cookie","值") --->设置cookie
响应体:response.set_signed_cookie("cookie","值",salt="盐") --->设置加盐的cookie

客户端发给服务器-----》请求体:request.COOKIES.get("cookie") -----> 拿到所有cookie
请求体:request.COOKIES.get_signed_cookie("cookie",salt="盐") -----> 拿到所有cookie

删除cookie-----》 response.delete_cookie("cookie")


实现跳转回登录之前的那个页面:在url后面跟上一个跳转url的参数
后端:request.get_full_path() ----> 拿到当前所在页面的
在HTML页面中也可以使用,但是不要加括号request.get_full_path


set_cookie的参数:
key,
value='',
max_age=None, --> 超时时间 多少秒之后cookie失效
expires=None, --> 超时时间 具体时间cookie失效
path='/', --> URL

---↑上面的必须会

domain=None, --> 域名
secure=False, --> 加密用的 Https
httponly=False --> JS代码不能读取cookie,只能浏览器发请求时携带cookie

Cookie超时时间
max_age=None, --> 超时时间 多少秒之后cookie失效
expires=None, --> 超时时间 具体时间cookie失效

设置加盐的Cookie
response.set_signed_cookie("login2", "1", max_age=10, salt="PythonFullstackS7")

获取加密的Cookie:
request.get_signed_cookie("login2", salt="PythonFullstackS7", default=None)

要手动设置默认值,防止取值抛KeyError的异常
posted @ 2017-12-03 17:46  chitalu  阅读(100)  评论(0)    收藏  举报