GET、POST都是什么——常用的HTTP方法——ASP.NET Core Web API(4)

大家在处理Web程序的时候经常使用一些GETPOST等词汇,这是HTTP协议中规定的HTTP方法,用来发送给服务器表示对一些资源的处理。这里记录一下这些常见的HTTP方法的含义及作用。

前言

根据杨旭老师在哔哩哔哩上的课程 ASP.NET Core 3.x 构建 RESTful API 记录的笔记,以后的笔记会根据课程进行更新。

这一节主要说各种常见HTTP方法的用途和作用。

HTTP 请求方法

关于 HTTP 方法,可以参考HTTP 请求方法 - HTTP | MDN

不同的动作作用于同样一个 URI,区别他们的是 HTTP 方法

“增删改查”

HTTP POST

创建/添加一个资源,比如发表一篇文章或者评论。

POST 的参数放在请求的 body 里。

POST 收到请求应该返回新创建的资源以及可以获取该资源的唯一标识 URI。

HTTP GET

获取一个资源,比如访问界面、列出产品列表等。

GET 的参数通常使用查询字符串,在 URI 的?后边,使用<参数> = <值>,多个查询使用"&“号连接。

GET 收到请求应该返回所查询的资源。

HTTP DELETE

删除一个资源,比如删除用户、文章等。

DELETE 通常没有参数。

DELETE 收到请求后应该删除资源(或标记为删除),无需返回信息,返回状态码HTTP 204即可。

HTTP PATCH

更新一个资源的一部分,比如用户更改头像、联系方式。

PATCH 的参数放在请求的 body 里面。

PATCH 收到请求后应该更新资源,返回状态码HTTP 204即可。

HTTP PUT

替换更新一个资源,Id 不变。如果没有这个资源则创建,但是多次请求结果不变。比如过户某账号。

PUT 的参数放在请求的 body 里,是完整的对象。

PUT 收到请求后应该替换资源但是 ID 不变,返回状态码HTTP 204即可。

总结

动作HTTP 方法Payload参数位置URI请求更改响应内容
查询GET查询参数Query端点 + ID无修改单个资源或多个资源的集合
添加/创建POST要创建的资源的对象Body端点新建资源新创建的资源
局部修改/更新PATCH待修改资源的JSON键值对Body端点 + ID更新资源的某些字段无需返回
替换PUT要替换的单个资源对象Body端点 + ID替换除了ID外整个资源无需返回
使用预定义的标识进行创建PUT要创建的单个资源对象Body端点 + ID创建了新的资源返回新创建的资源
移动/删除DELETE可含Query端点 + ID删除资源无需返回
冀ICP备17015375-1号
使用 Hugo 构建
主题 StackJimmy 设计