Java基础面试题(10)----http协议的get请求和post请求的区别

问题

http协议的get请求和post请求的区别是什么?

回答

在说区别之前,先来看一下他们之间的联系

http请求方式get和post的请求区别

联系:都是Http协议的请求方式

get和post请求都是http的请求方式,用户通过不同的请求方式完成对资源(URL)的操作,GET,POST,PUT,DELETE就是对应着对资源的查,改动,增加,删除操作。具体来讲get一般用户获取查询资源信息,而post一般用于更新资源信息。

区别

  • 显示请求数据的位置 get请求提交的数据会在地址栏显示出来,而Post请求不会再地址栏显示出来。
    Get请求提交,实际是把数据放置在HTTP协议的请求头中,以?跟个URL和传输数据,多个参数使用&连接。
    Java基础面试题(10)----http协议的get请求和post请求的区别
    Post请求提交,把数据放在HTTP请求的请求体中,一次Get请求提交的数据会在地址栏显示出来,而Post请求地址栏不会改变.通过图片我们可以看到post请求的请求体
    Java基础面试题(10)----http协议的get请求和post请求的区别

  • 数据传输的大小
    HTTP的get请求由于浏览器地址长度的限制,导致传输数据有限制,而Post请求不会因为地址长度限制而导致数据传输限制。

  • 安全性
    post请求的安全性要比get请求的安全性高,由于数据会在地址中呈现,所以可以通过历史记录来找到相关信息,用户登陆的信息一般使用post请求。