contrast

来源:互联网 发布:莫言 作品 知乎 编辑:程序博客网 时间:2024/05/15 08:44

1.session & cookie

http协议是无状态协议,所以为了能够存在状态,客户端引入了cookie,服务器端引入了session。

cookie存储在浏览器端,主要包括名字,值,过期时间,域和路径。

session


2.get & post

http定义了四种与服务器端进行交互的方式:get, post, put & delete 后两种不太常用,目前主流前两种方式

get本来的作用用于查询,理论上它应该是等幂的,即每次get相同的url,获得的数据结果相同。但是目前很多人为了方便,也将其作为一种提交数据的方式。

get格式:中文等特殊字符会进行url encode,空格会变成+,英文字符原样显示~

post主要是修改数据的~

#1 长度 

     get数据长度有限制,get在url上传输,url本身没有任何限制,http也没有对url的任何限制,但是浏览器和服务器上有最大长度限制,IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。

     post在理论上没有最大限值,当然也取决于服务器端的限制

#2 安全性

    get明文传输,post加密传输,理论上post更安全些


3.url encode & html encode

url encode http传参时,如果又包含中文或者韩文是无法直接传递的,需要进行url encode,而其实整个过程是这样的,比如说:“中文编码”,它把中文字符(UTF-8)的字符转化为16进制,再在前面加上%,就是现在我们看到的加密后的字符传%E4%B8%AD%E6%96%87%E7%BC%96%E7%A0%81

html encode 是为了防止XSS和sql注入,将"<",">","/"这些字符进行转义


4.json & xml

xml和json都是一种数据交换格式,但是xml偏向于数据结构完善,但是很重量级;而json是一个轻量级的,json也有数据结构之分,可以支持整形,字符串啥的。

0 0
原创粉丝点击