HTTP请求方法

HTTP请求方法

  1. GET

    • 作用:用于请求访问已经被URI(统一资源标识符)识别的资源。客户端通过GET请求从服务器接收数据。它将参数附加在URL中,因此不适合传输大量数据或敏感信息。

    • 特点:请求参数可见,请求结果可缓存,幂等(多次请求具有相同副作用)。

    • 传参格式:GET请求通常通过URL的查询字符串(Query String Parameters)传递参数。参数以key=value的形式追加到URL后面,多个参数之间使用&分隔。

    • 例子

      GET /search?key1=value1&key2=value2 HTTP/1.1
      Host: example.com
  2. POST

    • 作用:用于向服务器提交数据,请求服务器进行处理(如提交表单、上传文件)。数据放置在请求正文中,通常用于创建新的资源或更新现有资源。

    • 特点:请求参数不在URL中,适合传输大量数据,非幂等(多次请求可能会产生不同结果)。

    • 传参格式

      :POST请求的参数可以放在请求体中,根据Content-Type的不同,有不同的格式。

      • x-www-form-urlencoded:类似于GET请求的查询字符串格式,但位于请求体中。

      • multipart/form-data:用于文件上传,数据以多部分(boundary分隔)形式组织。

      • application/json:参数以JSON对象的形式放在请求体中。

    • 例子(application/json):

      POST /api/data HTTP/1.1
      Host: example.com
      Content-Type: application/json
      ​
      {"key1":"value1", "key2":"value2"}
      ​
  3. PUT

    • 作用:用于替换服务器上的某个现有资源的全部内容,要求客户端提供完整的资源数据。与POST相比,PUT是幂等的,多次请求具有相同效果。

    • 特点:全量更新,幂等,请求正文包含完整资源数据。

    • 传参格式:类似于POST,但通常是用来替换整个资源,参数同样可以放在请求体中,格式依据Content-Type决定。

    • 例子(application/json):

      PUT /api/item/123 HTTP/1.1
      Host: example.com
      Content-Type: application/json
      ​
      {"name":"newName", "status":"active"}
  4. DELETE

    • 作用:请求服务器删除指定的资源。

    • 特点:幂等,多次请求具有相同效果,即删除指定资源。

    • 传参格式:DELETE请求通常不携带请求体,参数可以通过URL路径或查询字符串传递。

    • 例子

      DELETE /api/item/123?reason=obsolete HTTP/1.1
      Host: example.com
  5. HEAD

    • 作用:类似GET,但服务器仅返回HTTP头部信息,不返回消息体,常用于检查资源是否存在、获取资源元数据等。

    • 特点:只获取头部信息,无响应体,幂等。

    • 传参格式:HEAD请求不携带请求体,参数通过URL的查询字符串传递,但HEAD请求主要用于获取头部信息,不期望有响应体。

    • 例子

      HEAD /api/data?key1=value1 HTTP/1.1
      Host: example.com
  6. OPTIONS

    • 作用:用于请求服务器告知其支持的所有HTTP方法或请求头信息,常用于CORS(跨域资源共享)预检请求。

    • 特点:用于获取服务器能力信息。

    • 传参格式:OPTIONS请求也不携带请求体,参数同样通过查询字符串传递,用于获取服务器支持的HTTP方法。

    • 例子

      OPTIONS /api/data HTTP/1.1
      Host: example.com
  7. TRACE

    • 作用:请求服务器回送接收到的请求信息,主要用于测试或诊断,回显客户端发送的请求。

    • 特点:用于诊断,不应用于生产环境。

    • 传参格式:TRACE请求主要用于诊断,它会将接收到的请求数据原封不动地返回给客户端,因此通常不带请求体,参数可以通过URL的查询字符串传递。

    • 例子

      TRACE /test-path?key=value HTTP/1.1
      Host: example.com
  8. CONNECT

    • 作用:在与代理服务器通信时使用,建立一个到远程服务器的TCP连接通道,通常用于SSL隧道代理。

    • 特点:用于代理隧道,如HTTPS连接。

    • 传参格式:CONNECT方法用于在与代理服务器通信时建立一个到目标服务器的TCP连接通道,特别是用于SSL/TLS隧道(比如HTTPS连接)。它通常不携带常规的请求参数,而是直接在请求行中指定目标主机和端口。

    • 例子

      CONNECT www.example.com:443 HTTP/1.1
      Host: www.example.com:443
  9. PATCH

    • 作用:用于对资源的部分属性进行更新,请求正文包含要更改的差异部分。

    • 特点:部分更新,非幂等。

    • 传参格式:PATCH用于更新资源的部分属性,参数通常放在请求体中,格式依据Content-Type,常见为application/jsonapplication/merge-patch+json

    • 例子(application/json):

      PATCH /api/item/123 HTTP/1.1
      Host: example.com
      Content-Type: application/json
      ​
      {"status":"inactive"}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值