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

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(区分大小写)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/17783.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker 持久化存储 Bind mounts

Docker 持久化存储 Bind mounts Bind mounts 的 -v 与 --mount 区别启动容器基于bind mount挂载到容器中的非空目录只读 bind mountcompose 中使用 bind mount 官方文档:https://docs.docker.com/storage/bind-mounts/ Bind mounts 的 -v 与 --mount 区别 如果使用…

ePWM模块(1)

ePWM模块 ePWM模块内部包含有7个子模块,分别是时间基准子模块TB、比较功能子模块CC,动作限定子模块AQ、死区控制子模块DB、斩波控制子模块PC、事件触发子模块ET和故障捕获子模块TZ。 每个ePWM模块都具有以下功能: 可以输出两路PWM,EPWMxA和EPWMxB两路PWM可以独立输出,也可…

大二一个学期学这么点内容,没有概念,只有实操

如何查看所有的数据库: Show databases; 如何进入某个数据库: use xxx; 如何新进数据库: Create database jx; 如何删除数据库: Drop database jx; 如何查看所有的表格: Show tables; 如何创建数据表&#xf…

【Flink】DataStream API使用之执行环境

1. 执行环境 Flink 程序可以在各种上下文环境中运行:我们可以在本地 JVM 中执行程序,也可以提交 到远程集群上运行。不同的环境,代码的提交运行的过程会有所不同。这就要求我们在提交作业执行计算时,首先必须获取当前 Flink 的运…

(异或相消)猫猫数字异或和

E - Red Scarf (atcoder.jp) 刚入坑写的一道题被我拉出来对比分析了 我的思路: 垃圾运气选手凭借直觉乱搞猜出来的,没有思路。 题解思路: 由问题陈述中XOR的定义,我们可以看出计算3个或更多整数的XOR可以以任意顺序进行&#…

ChatGPT :十几个国内免费可用 ChatGPT 网页版

前言 ChatGPT(全名:Chat Generative Pre-trained Transformer),美国OpenAI 研发的聊天机器人程序 ,于2022年11月30日发布 。ChatGPT是人工智能技术驱动的自然语言处理工具,它能够通过理解和学习人类的语言…

树脂塞孔有哪些优缺点及应用?

树脂塞孔的概述 树脂塞孔就是利用导电或者非导电树脂,通过印刷,利用一切可能的方式,在机械通孔、机械盲埋孔等各种类型的孔内进行填充,实现塞孔的目的。 树脂塞孔的目的 1 树脂填充各种盲埋孔之后,利于层压的真空下…

盲目自学网络安全只会成为脚本小子?

前言:我们来看看怎么学才不会成为脚本小子 目录: 一,怎么入门? 1、Web 安全相关概念(2 周)2、熟悉渗透相关工具(3 周)3、渗透实战操作(5 周)4、关注安全圈动…

2.RabbitMQ

RabbitMQ 1.初识MQ 1.1.同步和异步通讯 微服务间通讯有同步和异步两种方式: 同步通讯:就像打电话,需要实时响应。 异步通讯:就像发邮件,不需要马上回复。 两种方式各有优劣,打电话可以立即得到响应&am…

springboot整合flowable工作流引擎的简单使用

内容来自网络整理,文章最下有引用地址,可跳转至相关资源页面。若有侵权请联系删除 环境: mysql5.7.2 springboot 2.3.9.RELEASE flowable 6.7.2 采坑: 1.当前flowable sql需要与引用的pom依赖一致,否则会报library…

进程/线程 状态模型详解

前言:最近操作系统复习到线程的状态模型(也可以说进程的状态模型,本文直接用线程来说)时候,网上查阅资料,发现很多文章都说的很不一样,有五状态模型、六状态模型、七状态模型.......虽然都是对的…

[Python]爬虫基础——urllib库

urllib目录 一、简介二、发送请求1、urlopen()函数2、Request()函数 三、异常处理四、解析URL五、分析Robots协议 一、简介 urllib库是Python内置的标准库。包含以下四个模块: 1、request:模拟发送HTTP请求; 2、error:处理HTTP请…

前端技术——css

1.CSS的引入 【1】为什么要学习CSS? 如果只用HEML画页面的话--->这个页面就是页面上需要的元素罗列起来,但是页面效果很差,不好看,为了让页面好看,为了修饰页面。所以我们需要用到CSS。 CSS的作用:修饰HTML页面…

linux操作手册

开机&关机 指令 shutdown -h now 立刻进行关机 shutdown -h num num分钟后执行关机 shutdown -r now 现在重启计算机 halt 关机 rebboot 重启计算机 sync 把内存的数据同步到磁盘 注意事项 无论是重启还是关闭系统,都必须先执行sync,将内存…

使用无标注的数据训练Bert

文章目录 1、准备用于训练的数据集2、处理数据集3、克隆代码4、运行代码5、将ckpt模型转为bin模型使其可在pytorch中运用 Bert官方仓库:https://github.com/google-research/bert 1、准备用于训练的数据集 此处准备的是BBC news的数据集,下载链接&…

camunda表达式如何使用

在Camunda中,表达式是一种灵活的方式,可以用于在流程定义和表单中计算和处理数据。表达式可以在Camunda的各个环节中使用,例如服务任务、网关、表单、条件等。 以下是Camunda表达式的一些常见用途: 1、计算值:表达式可…

卢北辰:数据点亮梦想,能力驱动人生 | 提升之路系列(九)

导读 为了发挥清华大学多学科优势,搭建跨学科交叉融合平台,创新跨学科交叉培养模式,培养具有大数据思维和应用创新的“π”型人才,由清华大学研究生院、清华大学大数据研究中心及相关院系共同设计组织的“清华大学大数据能力提升项…

ipad有必要用手写笔吗?电容笔和Apple pencil区别

与Apple Pencil最大的不同之处,在于普通的电容笔并不具备着重力压感,而是会给人一种倾斜的压感。如果不是频繁作画,那就用一支普通的电容笔。这种电容笔不但可以用于办公室,也可以用于记笔记、做练习。再说了,一支苹果…

【C++修炼之路:二叉搜索树】

目录: 二叉搜索树的概念构建一颗二叉树二叉树的查找二插树的插入 二叉树的删除删除右子树的最小节点 写一个中序来走这个二叉搜索树递归版删除(recursion)递归版插入(recursion)递归版查找(recursion&#…

python+java+nodejs基于vue的企业人事工资管理系统

根据系统功能需求分析,对系统功能的进行设计和分解。功能分解的过程就是一个由抽象到具体的过程。 作为人事数据库系统,其主要实现的功能应包括以下几个模块: 1.登录模块 登录模块是由管理员、员工2种不同身份进行登录。 2.系统管理模块 用户…