数据的两种存储方式 cookie和session

数据的两种存储方式 cookie和session

一:什么是cookie
1、cookie是在服务端创建
2、cooki是保存在浏览器这一端
3、cookie的生命周期可以通过 cookie.setMaxAge(2000);
(如果不设置生命周期,cookie的生命周期当浏览器关闭时就消亡)
4、cooki可以被多个浏览器共享
5、一个web应用可以保存多个cookie。但保存在同一个cookie文本在客户端浏览器下。
6、cookie存放时候是以明文方式存放,因此安全性较低,可以通过加密后存放。
7、每次请求会携带与当前服务相关的键值对数据,cookie明文显示数据,用户可以知道cookie,数据存储在浏览器中容易被暴露,被获取,不存敏感数据

二:什么是seession:
1、session是存放在服务器的内存中。
2、一个用户的浏览器。,独享一个session域对象
3、session中属性默认的生命周期是30分,可以通过html文件来修改
4.服务器能够为不同的浏览器提供不同的session,
因为每个浏览器取访问web站点的时候,如果发出的http请求没有带JSESSIONID头就会自动给你创建一个并返回
5.session开启需要依赖数据库,因此需要确定是否存在与session相关的表

三:session和cookie的区别:

存放位置:
1.cookie存放在客户端的临时文件里。创建与服务端,保存在浏览器,可以有多个浏览器共享
2.session存在服务器的内存中,一个session域对象为一个用户浏览器服务。

安全性:
1.cookie是以文明方式存放在客户端,安全较差,可以通过md5再存放、
2.session是存放在服务器端的内存中,所以安全性好

网络传输量:
1.cookie会传递信息给服务端
2.session的属性值不会给客户端

生命周期:
1.cookie是累计时间
2.session是间隔时间

session失效情况:
1、关闭服务器
2、重装 web应用
3、设置了国企时间,时间到了
4、服务器错误也会让session失效。

使用原则:
session会占用服务器的内存

从范围来看
1.session为单用户独享
2.cookie为多个用户浏览器共享

保存信息的方法有两种:
1、保存在文件里面,
2、保存在数据库里面

from urllib import request,parse
from urllib.error import HTTPError,URLError


def get(url,headers=None):  
    return urlrequests(url,headers=None)

def post(url,form,headers=None):
    return urlrequests(url,form,headers=heardes)

def urlrequests(url,form=None,headers=None)
    user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
    if headers == None:
        headers = {
            'User-Agent':user_agent
        }
    html_bytes=b''
    try:
        if form:
            form_str = parse.urlencode(form)
            form_bytes = form_str.encode('utf-8')
            req = request.Resquest(url,data=form_bytes,headers=headers)
        else:
            req = request.Resquest(url,headers=headers)
        response = request.urlopen(req)
        html_bytes = response.read()
    except HTTPError as e:
        print(e)
    except URLError as e:
        print(e)
    return html_bytes

if __name__ == '__main__':  
    url = 'http://www.baidu.com'
    html_byte = get(url)
    print(html_byte)









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值