HTTP协议的8种请求方式及常用请求方式的解析

  发布时间:2022-10-19 23:06:38   作者:三也_小也   我要评论
HTTP即超文本传输协议,是一种实现客户端和服务器之间通信的响应协议,它是用作客户端和服务器之间的请求,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

什么是协议?

协议,是指通信的双方,在通信流程或内容格式上,共同遵守的标准。

一、什么是HTTP?

HTTP,即超文本传输协议,是一种实现客户端和服务器之间通信的响应协议,它是用作客户端和服务器之间的请求。

客户端(浏览器)会向服务器提交HTTP请求;然后服务器向客户端返回响应;其中响应包含有关请求的状态信息,还可能包含请求的内容。

二、http协议的特点

①通信流程:断开式(无状态)

断开式:http协议每次响应完成后,会断开与客户端的连接

无状态:由于服务器断开了之前的连接,就无法知晓连接间的关系

②内容格式:消息头和消息体

HTTP请求的方法:

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同的操作方式

1、OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
2、HEAD
向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
3、GET
向特定的资源发出请求。它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
4、POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form
5、PUT
向指定资源位置上传其最新内容
6、DELETE
请求服务器删除Request-URL所标识的资源
7、TRACE
回显服务器收到的请求,主要用于测试或诊断
8、CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

注意:

1)方法名称是区分大小写的,当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed);当服务器不认识或者不支持对应的请求方法时,应返回状态码501(Not Implemented)。
2)HTTP服务器至少应该实现GET和HEAD/POST方法,其他方法都是可选的,此外除上述方法,特定的HTTP服务器支持扩展自定义的方法。

三、HTTP的8种请求方式

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同的操作方式

其中:
HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法

最常用的四种请求方法:GET, POST, PUT, DELETE

1、get请求

get:可以理解 为 取 的意思,对应select操作
用来获取数据的,只是用来查询数据,不对服务器的数据做任何的修改,新增,删除等操作。
说明:
get请求会把请求的参数附加在URL后面,这样是不安全的,在处理敏感数据时不用,或者参数做加密处理。
get请求其实本身HTTP协议并没有限制它的URL大小,但是不同的浏览器对其有不同的大小长度限制

举例:

/company/my_take_part_in_projects_list?project_id=20085821&t=1655176334048&from=left_tree

在这里插入图片描述

2、post请求

post 可以理解 为 贴 的意思
数据发送到服务器以创建或更新资源,侧重于更新数据,对应update操作

说明:

post请求的请求参数都是请求body中

举例:

/20085821/bugtrace/buglists/query/1/created/desc?query_token=%……&&**

在这里插入图片描述

3、put请求

put:可以理解为 放 的意思
数据发送到服务器以创建或更新资源,侧重于创建数据,对应insert操作

4、delete请求

delete:字面意思删除,即删除数据,对应delete操作
用来删除指定的资源,它会删除URI给出的目标资源的所有当前内容

5、options请求

用来描述了目标资源的通信选项,返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性![
举例:https://imgservice.csdn.net/direct/v1.0/image/upload?type=blog&rtype=markdown&x-image-template=standard&x-image-app=direct_blog&x-image-dir=direct&x-image-suffix=png在这里插入图片描述

6、head请求

HEAD方法与GET方法相同,但没有响应体,仅传输状态行和标题部分。这对于恢复相应头部编写的元数据非常有用,而无需传输整个内容。

7、connect请求

CONNECT方法用来建立到给定URI标识的服务器的隧道;它通过简单的TCP / IP隧道更改请求连接,通常实使用解码的HTTP代理来进行SSL编码的通信(HTTPS)。

8、trace请求

TRACE方法用于沿着目标资源的路径执行消息环回测试;它回应收到的请求,以便客户可以看到中间服务器进行了哪些(假设任何)进度或增量。

综上,大家记得以下总结,即达到本贴目的

1、get 取,是查询数据,对应select操作
2、post 贴,常用于修改数据,对应update操作
3、put 放,常用于新增数据,对应insert操作
4、delete 删,是删除数据,对应delete操作

get 和 post区别

区别:

get请求无消息体,只能携带少量数据

post请求有消息体,可以携带大量数据

携带数据的方式:

get请求将数据放在url地址中

post请求将数据放在消息体中

GET请求请提交的数据放置在HTTP请求协议头中,而POST提交的数据则放在实体数据中;
GET方式提交的数据最多只能有1024字节,而POST则没有此限制。

其它文档

网络协议汇总:/network/851215.html
tcp三次握手、四次挥手:/network/388684.html
一次完整的http请求过程:/network/851216.html
常见HTTP状态码汇总:/article/104295.htm

相关文章

  • 一次完整的http请求过程分析

    浏览器输入一个URL回车后,会发生什么呢?这里就为大家分享一下,需要的朋友可以参考下
    2022-10-19
  • 常用网络协议汇总

    本篇主要是对网络协议进行一个归纳总结,方便后续查阅及复习,当然如有新的认知或新的理解,也会持续更新
    2022-10-19
  • 常用网络协议汇总 详解篇

    今日回顾网络知识时,发现自己专门整理过一篇关于日常生活中常见的网络协议知识以及作用的梳理,特发此一贴,也当给自己巩固网络知识了,如有错误,望各大佬指正
    2022-10-19
  • HTTP协议的8种请求方式及常用请求方式的解析

    HTTP即超文本传输协议,是一种实现客户端和服务器之间通信的响应协议,它是用作客户端和服务器之间的请求,需要的朋友可以参考下
    2022-10-19
  • HTTP基准压测工具wrk使用指南

    这篇文章主要为大家介绍了HTTP基准压测工具wrk的使用指南,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-02-21
  • 解决https网页加载http资源报错问题

    这篇文章介绍了解决https网页加载http资源报错的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-01-12
  • OSI七层模型与TCP/IP五层模型详解

    本文详细讲解了OSI七层模型与TCP/IP五层模型,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-16
  • 以太网数据帧的结构分析

    以太网是一种计算机局域网技术。IEEE组织的IEEE 802.3标准制定了以太网的技术标准,它规定了包括物理层的连线、电子信号和介质访问层协议的内容
    2021-12-16
  • HTTP协议与HTTPS协议的区别详解(图文)

    为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的
    2021-11-27
  • 进制转换之二进制十进制和十六进制

    这篇文章主要介绍了进制转换之二进制十进制和十六进制,需要的朋友可以参考下
    2020-02-10

最新评论

?


http://www.vxiaotou.com