GET和POST的区别

1、前言

经常在面试或笔试的时候,会被问到GET请求与POST请求有何区别,区别在哪里,什么时候用GET请求、什么时候用POST请求等等的问题。

 

2、HTTP协议

是什么会用到这两种方法(GET请求与POST请求)?

先来了解什么是HTTP?

超文本传输协议(Hypertext Transfer Protocol,缩写 HTTP)旨在启用客户端和服务器之间的通信。

HTTP充当客户端和服务器之间的请求-响应协议。

举例:客户端(浏览器)向服务器发送HTTP请求;然后服务器将响应返回客户端。响应包含有关请求的状态信息,也可能包含所请求的内容。

 

HTTP方法:

GET

POST

PUT

HEAD

DELETE

PATCH

OPTIONS

...

最常用的两种方法是:GET和POST

 

3、GET请求

GET请求用于从指定资源请求数据。

 

示例:

请求参数(名称/值对)是在GET请求的URL中发送的:

 

GET请求可被缓存
GET请求保留在浏览器历史记录中
GET请求可被收藏为书签
GET请求不应在处理敏感数据时使用
GET请求有长度限制(若要支持IE的话,最大的长度为2083字符,若是中文字符的话只有2083/9=231个字符)
GET请求只应当用于取回数据(不修改)
 

4、POST请求

POST请求用于将数据发送到服务器来创建/更新资源。

 

示例:

通过POST发送到服务器的数据存储在HTTP请求的请求主体中:

 

POST请求不会被缓存
POST请求不会保留在浏览器历史记录中
POST不能被收藏为书签
POST请求对数据长度没有要求
 

5、GET请求与POST请求对比

根据w3school给出的表格,可以清楚的看到GET与POST的区别: 

 

posted @ 2021-11-10 13:32  AllTests软件测试  阅读(89)  评论(0编辑  收藏  举报