HTTP的method方法 GET POST PUT DELETE HEAD OPTIONS CONNECT PATCH TRACE

news/2024/11/30 9:42:28/

HTTP的method方法 GET POST PUT DELETE HEAD OPTIONS CONNECT PATCH TRACE

  • GET
    向指定的资源发出“显示”请求。使用GET方法应该只用在读取数据,而不应当被用于产生“副作用”的操作中,例如在Web Application中。其中一个原因是GET可能会被网络蜘蛛等随意访问。

  • HEAD
    与GET方法一样,都是向服务器发出指定资源的请求。只不过服务器将不传回资源的本文部分。它的好处在于,使用这个方法可以在不必传输全部内容的情况下,就可以获取其中“关于该资源的信息”(元信息或称元数据)。

  • POST
    向指定资源提交数据,请求服务器进行处理(例如提交表单或者上传文件)。数据被包含在请求本文中。这个请求可能会创建新的资源或修改现有资源,或二者皆有。

  • PUT
    向指定资源位置上传其最新内容。用于更新

  • DELETE
    请求服务器删除Request-URI所标识的资源。

  • TRACE
    回显服务器收到的请求,主要用于测试或诊断。

  • OPTIONS
    这个方法可使服务器传回该资源所支持的所有HTTP请求方法。用’*'来代替资源名称,向Web服务器发送OPTIONS请求,可以测试服务器功能是否正常运作。

  • CONNECT
    HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。通常用于SSL加密服务器的链接(经由非加密的HTTP代理服务器)。

  • PATCH
    PATCH翻译是"补丁"的意思 ,
    HTTP中为了提高交互操作性与防止错误,确实需要一种新的修改方法,而PUT方法已经被定义为用一个请求体去修改一个完整的资源。并且不能重复做部分更改,否则代理和缓存、甚至服务器或者客户端都会得到有问题的操作结果。
    至此,PATCH方法有了被完全定义的必要。
    PATCH在请求中定义了一个描述修改的实体集合,如果被请求修改的资源不存在,服务器可能会创建一个新的资源。
    PUT 和 PATCH 请求之间的差异反映在服务器处理包含的实体以修改资源的方式
    由请求 URI 标识。在 PUT 请求中,包含的实体
    被视为存储在源站,客户端请求存储的版本被替换。但是,对于 PATCH,封闭的实体包含一组
    描述当前驻留在应修改源服务器以生成新版本。补丁方法会影响由请求 URI 标识的资源,并且它
    也可能对其他资源产生副作用;即新资源可以通过应用程序创建或修改现有补丁。
    简单来说就是:PATCH更新部分,PUT更新全部.

HTTP request methods -MDN

HTTP defines a set of request methods to indicate the desired action to be performed for a given resource. Although they can also be nouns, these request methods are sometimes referred to as HTTP verbs. Each of them implements a different semantic, but some common features are shared by a group of them: e.g. a request method can be safe, idempotent, or cacheable.
HTTP 定义了一组请求方法, 以表明要对给定资源执行的操作。指示针对给定资源要执行的期望动作. 虽然他们也可以是名词, 但这些请求方法有时被称为HTTP动词. 每一个请求方法都实现了不同的语义, 但一些共同的特征由一组共享:: 例如一个请求方法可以是 safe, idempotent, 或 cacheable.

GET

The GET method requests a representation of the specified resource. Requests using GET should only retrieve data.
GET方法请求一个指定资源的表示形式. 使用GET的请求应该只被用于获取数据.

HEAD

The HEAD method asks for a response identical to a GET request, but without the response body.
HEAD方法请求一个与GET请求的响应相同的响应,但没有响应体.

POST

The POST method submits an entity to the specified resource, often causing a change in state or side effects on the server.
POST方法用于将实体提交到指定的资源,通常导致状态或服务器上的副作用的更改. 

PUT

The PUT method replaces all current representations of the target resource with the request payload.
PUT方法用请求有效载荷替换目标资源的所有当前表示。

DELETE

The DELETE method deletes the specified resource.
DELETE方法删除指定的资源。

CONNECT

The CONNECT method establishes a tunnel to the server identified by the target resource.
CONNECT方法建立一个到由目标资源标识的服务器的隧道。

OPTIONS

The OPTIONS method describes the communication options for the target resource.
OPTIONS方法用于描述目标资源的通信选项。

TRACE

The TRACE method performs a message loop-back test along the path to the target resource.
TRACE方法沿着到目标资源的路径执行一个消息环回测试。

PATCH

The PATCH method applies partial modifications to a resource.
PATCH方法用于对资源应用部分修改。

在这里插入图片描述

RESTful架构 (表述性状态转移)

REST(英文:Representational State Transfer,表述性状态转移, 简称REST)

每一个URI代表1种资源;

客户端使用GET、POST、PUT、DELETE4个表示操作方式的动词对服务端资源进行操作:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源;

GET、POST、PUT、DELETE 可以对于数据库的 查,增,改,删

  • GET 查询 SELECT
  • POST 新增或创建 INSERT 或 CREATE
  • PUT 更新 UPDATE
  • DELETE 删除 DELETE

PATCH 方法也用于更新
HTTP PATCH 方法用于 OSLC 资源的非完整更新。不同于 PUT 方法,PATCH 方法不会删除不包含在请求中的所有本地资源属性。必须使用 x-method-override 头来指定 PATCH 方法。

使用 PATCH 方法来替换 OSLC 资源时,下列规则适用:

将对请求文档中指定的所有字面属性进行更新。框架不会显式地影响任何未在请求中指定的字面属性。但是,对资源附加的业务逻辑可能会隐式地影响这些属性。
请求中的相应属性值将更新或替换所有的本地资源属性。如果资源属性未包括在请求中,那么框架不会显式地影响相应的本地资源。如果包括了资源属性,那么它的值将替换或更新服务器中的值。
无法显式地更新引用资源。但是,您可以更新引用了该资源的属性,这些属性将遵循字面属性的更新模型。

PATCH 实现具有两个用例:

可以将数组(本地资源)属性替换为请求中的内容。此用例是缺省实现。
可以在请求中查找数组资源元素并使其与服务器中的相应元素匹配。根据能否找到匹配项,将更新或插入数组资源元素。永远不会从本地资源属性中删除数组元素。要获取此用例,客户端必须将 PATCHTYPE HTTP 请求头设置为值 MERGE(区分大小写)。

http://www.ppmy.cn/news/59012.html

相关文章

educoder实训——字符串【1】

文章目录 统计英文文件中的单词数任务描述相关知识编程要求代码凯撒密码-加密任务描述相关知识输入输出格式代码凯撒密码-解密任务描述相关知识编程要求代码使用凯撒密码加密和解密英文文件任务描述相关知识编程要求代码统计英文文件中的单词数 任务描述 本关任务:编写一个能…

【MySQL入门指南】4种插入数据的方法

文章目录 MySQL的增删查改① - 增1.发生冲突则失败1.1 基本语法1.2 单行数据全列插入1.3 多行数据 指定列插入 2.发生冲突则更新2.1 基本语法2.2 插入否则更新 3.发生冲突则替换3.1 基本语法3.2插入否则替换 4.插入查询结果 MySQL的增删查改① - 增 -- 创建一张学生表 CREATE…

十几个免费好用的抓包工具

1. Hping Hping是最受欢迎和免费的抓包工具之一。它允许你修改和发送自定义的ICMP,UDP,TCP和原始IP数据包。此工具由网络管理员用于防火墙和网络的安全审计和测试。 HPing可用于各种平台,包括Windows,MacOs X,Linux&…

08 Kubernetes应用配置管理

课件 在 Kubernetes 中,secret 是一种用于存储敏感信息的对象。Kubernetes 支持以下三种类型的 secret: Opaque:这是默认的 secret 类型,可以用于存储任何类型的数据,包括字符串、二进制数据等。 Service Account&…

sqlserver object_id()函数学习

在SQLServer数据库中,如果查询数据库中是否存在指定名称的索引或者外键约束等,经常会用到object_id(name,type)方法, 语法:object_id(objectname)或object(objectname,type) 作用:该函数会返回指定对象的ID值&#xf…

100种思维模型之蝴蝶效应思维模型-56

“蝴蝶效应 ”说的是:一只南美洲亚马孙河边热带雨林中的蝴蝶,偶尔扇几下翅膀,就有可能在两周后引起美国得克萨斯的一场龙卷风。 原因在于: 蝴蝶翅膀的运动,导致其身边的空气系统发生变化,并引起微弱气流的…

idea好用插件分享——Bito-ChatGPT

文章目录 安装步骤:第一步:打开Setting第二步:选择Plugins,输入Bito,就可以搜索出来了,再点击安装第三步:安装完成回到IDEA主界面,右边区域可以看到Bito图标,点击展开&am…

MySQL数据库——MySQL TRUNCATE:清空表记录

MySQL 提供了 DELETE 和 TRUNCATE 关键字来删除表中的数据。下面主要讲解一下 TRUNCATE 关键字的使用。 TRUNCATE 关键字用于完全清空一个表。其语法格式如下: TRUNCATE [TABLE] 表名 其中,TABLE 关键字可省略。 例 1 新建表 tb_student_course&…