GET、POST、PUT、DELETE请求方式的区别以及用途
1、GET
GET请求是用来获取数据的,不对服务器的数据做任何的修改,新增,删除等操作。
GET请求就像数据库的SELECT操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容。GET请求会把请求的参数附加在URL后面,这样会产生安全问题,如果是系统的登陆接口采用的GET请求,需要对请求的参数做一个加密。
2、PUT
PUT请求是向服务器端发送数据的,PUT请求就像数据库的UPDATE操作一样,用来修改数据的内容,PUT的侧重点在于对于数据的修改操作。
3、POST
POST请求同PUT请求类似,都是向服务器端发送数据的,但是POST请求会改变数据的种类等资源,就像数据库的INSERT操作一样,会创建新的内容。常用来数据的提交,新增操作。
4、DELETE
DELETE请求用来删除某一个资源的,DELETE请求就像数据库的DELETE操作一样。
根据上边四个描述,可以理解为:
1、POST 创建
2、DELETE 删除
3、PUT 更新
4、GET 查看
PUT和POST使用区别
在HTTP中,PUT被定义为幂等(idempotent)的方法,POST则不是,这是一个很重要的区别。
幂等是数学的一个用语,对于单个输入或者无输入的运算方法,如果每次都是同样的结果,则称其是幂等的。也就是说,如果一个网络重复执行多次,产生的效果是一样的,那就是幂等(idempotent)。
POST:用于提交请求,可以更新或者创建资源,是非幂等的,举个例子:
在用户注册功能上,每次提交都是创建一个用户账号,这个时候就用POST。
PUT:用于向指定URL传送更新资源,是幂等的。
还是用户模块,比如修改用户密码,虽然提交的还是账户名跟用户密码这个俩个必填参数,但是每次提交都只是更新该用户密码,每次请求都只是覆盖原先的值。此时就该用PUT。
HTTP状态码
HTTP状态码被分为五大类, 目前我们使用的HTTP协议版本是1.1, 支持以下的状态码。随着协议的发展,HTTP规范中会定义更多的状态码。
| 已定义范围 | 分类 |
1XX | 100-101 | 信息提示 |
2XX | 200-206 | 成功 |
3XX | 300-305 | 重定向 |
4XX | 400-415 | 客户端错误 |
5XX | 500-505 | 服务器错误 |