M1sc的笔记

一、COOKIE

1、什么是Cookie?

    Cookie是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个cookie。

    Cookie的作用就是用于解决"如何记录客户端的用户信息":

    ①当用户访问web页面时,他的名字可以记录在Cookie中。

   ②在用户下一次访问该页面时,可以在Cookie中读取用户访问记录。

    Cookie实际上是一小段文本信息(上限为4kb)。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端浏览器可以把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务还可以根据需要修改Cookie的内容。

2、Cookie的属性

属性名 描述
name Cookie的名称,Cookie一旦创建,名称便不可更改
value Cookie的值,如果值为Unicode字符,需要为字符编码。如果为二进制数据,则需要使用BASE64编码
maxAge Cookie失效的时间,单位秒。如果为整数,则该Cookie在maxAge秒后失效。如果为负数,该Cookie为临时Cookie,关闭浏览器即失效,浏览器也不会以任何形式保存该Cookie。如果为0,表示删除该Cookie。默认为-1。
secure 该Cookie是否仅被使用安全协议传输。安全协议。安全协议有HTTPS,SSL等,在网络上传输数据之前先将数据加密。默认为false。
path Cookie的使用路径。如果设置为“/sessionWeb/”,则只有contextPath为“/sessionWeb”的程序可以访问该Cookie。如果设置为“/”,则本域名下contextPath都可以访问该Cookie。注意最后一个字符必须为“/”。
domain 可以访问该Cookie的域名。如果设置为“.google.com”,则所有以“google.com”结尾的域名都可以访问该Cookie。注意第一个字符必须为“.”。
comment 该Cookie的用处说明,浏览器显示Cookie信息的时候显示该说明。
version Cookie使用的版本号。

二、HTTP协议

  HTTP协议:无连接无状态的协议,无状态是指Web浏览器与Web服务器之间不需要建立持久的连接。(session和cookie不安全以及大部分安全风险主要是因为HTTP协议本身不够安全。。。)

 HTTP请求: 

POST /test.php HTTP/1.1               //请求行              请求方法    请求页面

HOST:www.test.com                    //请求头              主机地址

User-Agent:Mozilla/5.0 (windows NT 6.1;rv:15.0)//空白行,代表请求头结束   浏览器标识

Username=admin&password=admin       //请求正文

GET、POST、HEAD、PUT请求方法的区别:

 GET:GET方法用于获取请求页面的指定信息。参数直接拼接在地址栏URL的后面;有具体的长度限制(<1024K);数据明文显示,不安全;产生一个数据包;浏览器会把http header 和 data 一并发出去,服务器响应200(返回数据)

 POST:最大的区别在于,GET方法没有请求内容,而POST是有请求内容的。参数是放到请求体里面;理论上无长度限制;产生两个数据包;浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok

 HEAD:这个请求的功能与GET请求相似,不同之处在于服务器不会再其响应中返回消息主体,因此,这种方法可用于检查某一资源在向其提交GET请求前是否存在。

PUT:PUT方法用于请求服务器把请求中的实体存储在请求资源下,如果请求资源已经在服务器中存在,那么将会用此请求中的数据替换原先的数据。向服务器上传指定的资源。

http状态码规律

1xx:信息提示,表示请求已被成功接收,继续处理。

2xx:请求被成功提交。3xx:客户端被重定向到其他资源。

4xx:客户端错误状态码,格式错误或者不存在资源。

5xx:描述服务器内部错误。 

三、COOKIE和SESSION

session和cookies同样都是针对单独用户的变量,不同的用户在访问网站的时候都会拥有各自的session或者cookies。(大站一般用Cookie)

 

  不同点                                                     session                                                              cookies

存储位置不同          服务器端产生,较安全,但session较多则会影响性能     客户端产,安全性稍弱,生命周期不同

生命周期                 在指定的时间后会结束,不到指定的时间,               默认浏览器进程结束而结束,但手动指定时间,则

                               也会随着浏览器进程的结束而结束。                          不受浏览器进程结束的影响。

数据位置                 放在服务器上                                                             数据存放在客户的浏览器

安全性                     安全                                                                           不安全

                              session会在一定时间内保存在服务器上,                 减轻服务器性能方面,应当使用COOKIE,

                            当访问增多,会比较占用你服务器的性能                     一个站点在客户端存放的COOKIE不能3K

posted @ 2021-01-09 16:25  M1sc  阅读(76)  评论(0)    收藏  举报