优秀的编程知识分享平台

网站首页 > 技术文章 正文

get请求和post请求的区别(get请求跟post请求的区别)

nanyue 2024-10-21 06:17:30 技术文章 7 ℃

GET和POST是HTTP请求的两种基本方法,他们都是HTTP协议中的请求方法。底层实现都是基于TCP/IP协议。所谓区别,只是浏览器厂家根据约定,做得限制而已。

图示如下:

过谷歌浏览器开发者工具的Network选项卡,可以捕获HTTP请求或者响应的相关信息。

上面就是一个GET请求,再来看一个POST请求演示截图:

POST与GET请求区别总结:

  • get请求可以被缓存而post请求不能被缓存
  • get请求的传参方式和post请求的传参方式不同
  • get请求传参: 通过url后面带参数,链接问号(?)后面就是要向HTTP服务器发送的数据,如果有多个数据,用&连接。
http://www.test.com/path/to/resource?id=faef123&name=foo&age=122

post请求传参:在请求实体中

红框中就是POST请求向HTTP发送的部分数据,GET和HEAD请求不具有此部分。

由于get和post传参方式的不同,所以决定了他们会有以下区别:

  • 由于浏览器对url的长度限制(一般为2083字符)限制,get请求的长度是有限的,而post请求则没有大小限制
  • 由于get请求的参数会暴露在url中,通过URI发送数据,甚至直接在浏览器地址栏就能观察到,安全性非常的低。
  • get请求只能使用application/x-www-form-urlencoded编码,而post请求可以使用多种编码格式application/x-www-form-urlencoded/multipart/form-data/application/json
  • get请求可以保存在浏览器历史中,而post请求不会
最近发表
标签列表