python中cookie和session的区别

python中cookie和session的区别

1、区别

(1)cookie数据存储在客户浏览器上,session数据存储在服务器上。

(2)cookie不太安全,他人可以分析保管在当地的cookie,欺骗cookie,考虑到安全应该使用session。

(3)session在一定时间内保存在服务器上。访问增加时,考虑到服务器的性能减轻,必须使用cookie。

(4)单个cookie保存的数据不得超过4K。许多浏览器限制了一个网站最多保存20个cookie。

(5)建议:将登录信息等重要信息存储在SESSION的其他信息中,可以存储在cookie中。

2、实例

import requests  # 导入request
s = requests.Session()  # 实例化一个request.Session类的对象
print("登陆之前的cookies:",s.cookies)  # 与登录之后的cookie对比,一开始为空,后面登录后,就获取到了cookie
 
login_url = "https://www.ketangpai.com/UserApi/login"
login_datas = {"email":"198658759##",
             "password":"sdk93#####",
             "remember":0}
 
resp = s.post(login_url, data=login_datas)  # 发送post请求,登录,获取cookie,会自动添加到s对象中,后续接口请求要用到cookie,直接使用即可
print("登陆之后的cookies:",s.cookies) # 主动会将响应的set-cookies添加到s对象当中。
print(resp.json())
 
userinfo_url = "https://www.ketangpai.com/UserApi/getUserInfo"  # 发送请求,获取用户信息,验证是否自动带上了cookie
resp1 = s.get(userinfo_url)
print(resp1.json())

发表评论