首页
学习
活动
专区
圈层
工具
发布

HTTP 协议的常用方法有哪些?(GET、POST、PUT、DELETE、PATCH)各自的作用和区别是什么?

其中最常用的是 ​​GET​​​、​​POST​​​、​​PUT​​​、​​DELETE​​​、​​PATCH​​,它们的作用和区别如下:1....GET作用:从服务器获取资源(只读操作),是最常用的方法。特点: 请求参数通常附加在 URL 后面(如 ​​?...核心区别总结方法核心作用数据位置安全性(是否修改资源)幂等性(多次执行结果是否相同)缓存性典型场景GET获取资源URL 参数安全(不修改)幂等可缓存查询数据POST创建资源/提交数据请求体非安全(可能修改...(部分字段)非安全(修改)幂等不可缓存仅修改用户邮箱、手机号补充说明安全性:指是否改变服务器资源的状态(​​GET​​ 是唯一安全的方法)。...幂等性:指多次执行相同请求后,服务器资源状态是否一致(​​GET​​/​​PUT​​/​​DELETE​​/​​PATCH​​ 是幂等的,​​POST​​ 通常非幂等)。

1.4K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    告知服务器意图的 HTTP 方法1 GET:获取资源2 POST:传输实体主体3 PUT:传输文件4 HEAD:获得报文首部5 DELETE:删除文件6 OPTIONS:询问支持的方法一般网站只用G

    这里写图片描述 2 POST:传输实体主体 用来传输实体的主体。 虽然用 GET 方法也可以传输实体的主体,但一般不用 GET 方法进行传输,而是用 POST 方法。...这里写图片描述 响应的意思其实是请求执行成功了,但无数据返回 4 HEAD:获得报文首部 HEAD 方法和 GET 方法一样,只是不返回报文主体部分。...DELETE 方法按请求 URI 删除指定的资源。 但是,HTTP/1.1 的 DELETE 方法本身和 PUT 方法一样不带验证机制,所以一般的 Web 网站也不使用 DELETE 方法。...这里写图片描述 6 OPTIONS:询问支持的方法 用来查询针对请求 URI 指定的资源支持的方法。 ? 这里写图片描述 举个例子 ?...这里写图片描述 一般网站只用Get和Post,代表获取和更新,html的form仅支持Get和Post

    1.4K100

    Laravel 表单方法伪造与 CSRF 攻击防护

    1、表单方法伪造 有时候,我们可能需要手动定义发送表单数据所使用的 HTTP 请求方式,而 HTML 表单仅支持 GET 和 POST 两种方式,如果要使用其他的方式,则需要自己来定义实现。...public static $verbs = ['GET', 'HEAD', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS']; 并为其提供了相应的路由定义方法...对于 HTML 表单属性而言,有一个问题是 HTML 表单仅支持 GET 和 POST 请求,如果要使用其他请求方式怎么办?...表单请求方法伪造 要告知 Laravel 当前提交的表单使用的是 GET/POST 之外的其他请求方式,需要在表单中添加一个名为 _method 的隐藏字段,字段值是「PUT」、「DELETE」或 「PATCH...、OPTIONS),如果路由执行的是「写入」操作(对应请求方式是 POST、PUT、PATCH、DELETE),则需要传入一个隐藏的 Token 字段(_token)以避免[跨站请求伪造攻击](CSRF

    11.1K40

    beego路由配置路由设置

    ,beego 默认就是支持这样的请求方法,也就是用户 Get 请求就执行 Get 方法,Post 请求就执行 Post 方法。...RESTful 规则 上面列举的是默认的请求方法名(请求的 method 和函数名一致,例如 GET 请求执行 Get 函数,POST 请求执行 Post 函数),如果用户期望自定义函数名,那么可以使用如下方式...,"get:GetFunc;post:PostFunc") 可用的 HTTP Method: *: 包含以下所有的函数 get: GET 请求 post: POST 请求 put: PUT 请求 delete...: DELETE 请求 patch: PATCH 请求 options: OPTIONS 请求 head: HEAD 请求 如果同时存在 * 和对应的 HTTP Method,那么优先执行 HTTP Method...自定义函数的路由默认不支持 RESTful 的方法,也就是如果你设置了 beego.Router("/api",&RestController{},"post:ApiFunc") 这样的路由,如果请求的方法是

    5.9K10

    HTTP中的九个请求方法

    CONNECT 是一个应用范围为点到点的方法。 2.DELETE HTTP DELETE 请求方法用于删除指定的资源。...4.HEAD HTTP HEAD 方法 请求资源的头部信息, 并且这些头部与 HTTP GET 方法请求时返回的一致....如果 HEAD 请求的结果显示在上一次 GET 请求后缓存的资源已经过期了, 那么该缓存会失效, 即使 GET 请求已经完成. 5.OPTIONS HTTP 的 OPTIONS 方法 用于获取目的资源所支持的通信选项...,该字段的值表明了服务器支持的所有 HTTP 方法: HTTP/1.1 200 OK Allow: OPTIONS, GET, HEAD, POST Cache-Control: max-age=604800...另外一个支持 PATCH 方法的隐含迹象是 Accept-Patch 首部的出现,这个首部明确了服务器端可以接受的补丁文件的格式。 7.POST HTTP POST 方法 发送数据给服务器.

    1.8K10

    Golang Gin 实战(二)| 简便的Restful API 实现

    在HTTP 1.0的时候又增加了HEAD和POST方法,其中常用的就是POST方法,一般用于我们给服务端提交一个资源,导致服务器的资源发生变化。...GET GET方法请求一个指定资源的表示形式. 使用GET的请求应该只被用于获取数据. HEAD HEAD方法请求一个与GET请求的响应相同的响应,但没有响应体....POST POST方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用. PUT PUT方法用请求有效载荷替换目标资源的所有当前表示。 DELETE DELETE方法删除指定的资源。...对于以上请求方法,目前的大部分浏览器都支持。.... // GET, POST, PUT, PATCH, HEAD, OPTIONS, DELETE, CONNECT, TRACE. func (group *RouterGroup) Any(relativePath

    4.1K10

    Gin 路由注册与请求参数获取

    RESTful架构的设计理念是将资源表示为URI(统一资源标识符),通过HTTP协议的GET、POST、PUT、DELETE等方法对资源进行操作。...状态转移(State Transfer):RESTful架构通过HTTP方法(GET、POST、PUT、DELETE等)实现状态的转移,对资源进行增删改查的操作。.../delete_book 删除书籍信息 同样的需求我们按照RESTful API设计如下: 请求方法 URL 含义 GET /book 查询书籍信息 POST /book 创建书籍记录 PUT /book...10.9 校验请求:Go 正则表达式不支持部分语法 前面我们用的是官方自带的,但是 Go 自带的正 则表达式不支持一些语法,比如说我这里想要用 的表达式:^(?=.*[A-Za-z])(?=....这种就不支持。所以我们换用另外一个开源的正则表达式匹配 库:github.com/dlclark/regexp2。

    99510

    使用ASP.NET Core 3.x 构建 RESTful API - 3.2 路由和HTTP方法

    但是它们的HTTP方法则不同,一个是GET,一个是DELETE。下面我们就来看看那些动作应该对应哪些 HTTP 方法。 POST 需求:添加一个公司信息。 需求图解: ?...这里对应的HTTP方法是POST。 POST请求的参数通常存放在请求的body里面,所以公司的信息就放在了body里面。...文字解释: HTTP 的 DELETE 方法就很好理解了,就是删除指定路径的资源而已,而且不需要返回任何东西。 PATCH 需求:更新公司的信息。 需求图解: ? HTTP请求图解: ?...HTTP 用来表示更新信息的方法是 PATCH,所以整个请求时 PATCH api/companies/{companyId}。注意PATCH表示对资源进行局部更新。...和POST一样,PATCH的参数也位于请求的body里面。例如,如果你想更新公司的名称,那么就要把新的公司名称放在body里面。 PATCH的请求无需返回任何东西。

    1.5K10
    领券