Get和Post

153 阅读1分钟

Get与Post

引自 juejin.cn/post/684490…

一. 区别

  1. get用来获取数据,post用来提交数据

  2. get参数有长度限制(受限于url的长度,具体的数值取决于浏览器和服务器的限制,最长2048字节)

    post无长度限制

  3. get请求的数据会附加在url之后,以?来分割url和参数,多个参数用&来连接,

    post请求会把请求的数据放在http请求体中

  4. get是明文传输,post是放在请求体中,但是开发者可以通过抓包工具看到,也相当于是明文的

  5. get请求会保存在浏览器的历史记录中,还可以保存在web服务器的日志中

  6. get产生一个tcp数据包,post产生两个tcp数据包

二.安全性

首先,getpost在本质上都是tcp链接,但由于http协议和浏览器或者服务器的限制,从而使他们在应用过程中产生了差别,但是它们中还有一个较大的区别:get在请求时发送一个数据包,会将headerdata一起发送过去,而post会产生两个数据包,先发送header,服务器返回100,然后再发送data,服务器返回200

所以当你一层一层的把getpost剖析到底,你会发现他们的本质就是tcp连接,没有啥区别,只是由于http协议规定和浏览器或者服务器的限制,导致他们在应用过程中体现形式不同

\