赞
踩
浏览器请求服务器是无状态的 即用户请求时,浏览器,服务器无法知道之前的用户信息,每次请求都是新请求。
无状态原因,浏览器和服务器使用socket套接字通信,服务器将请求结果返回给浏览器后,便关闭当前的socket连接,而且服务器也会在处理页面完毕之后销毁页面对象。
有时需要保持下来用户浏览的状态,比如用户是否登录过,浏览过哪些商品等
类似联系使用手机 手机号存储在联系人或被联系人手机都可进行通话
保存到客户端的数据叫cookie
cookie流程:
1 客户端向浏览器发送第一次请求,没有任何cookie信息
2 服务器接受请求后,生成cookie信息
3 cookie信息设置在Response中
4 浏览器接受Response 发现response中有cookie信息,存储cookie信息到浏览器中
5 浏览器向服务器发送第二次及其以后的请求,都会携带cookie信息
6 服务器会接收到携带cookie信息
def set_cookie(request):
# 1 先判断有没有cookie信息
# 假设没有
# 2获取用户名
username=request.GET.get("username")
response = HttpResponse("set_cookie")
# key,value
# max-age 单位是秒,即cookie保存的时间
response.set_cookie("username",username,max_age = 3600)
return response
第一次请求 请求头中无cookie信息
Response中的cookie
第二次Request cookie已经携带了
服务器查看cookie信息
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。