当前位置:首页 > 经验 >

http协议如何测试(http协议是怎么实现的)

来源:原点资讯(www.yd166.com)时间:2022-11-09 14:27:55作者:YD166手机阅读>>

本文节选自霍格沃兹测试开发学社内部教材

HTTP 协议是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是万维网的数据通信的基础。客户端向服务端发送 HTTP 请求,服务端则会在响应中返回所请求的数据。了解了 HTTP 协议,才能对接口测试进行更深入的学习。

环境安装准备

HTTP 请求报文和响应报文都是由三个部分组成的:

  • 开始行:请求报文中叫请求行,响应报文中叫状态行
  • 首部行:用来说明浏览器服务器或报文主体的一些信息
  • 实体主体:请求报文中一般不使用,响应报文中可能也没有
请求报文
  • requests 报文结构

http协议如何测试,http协议是怎么实现的(1)

  • 请求行:请求方法、请求资源的 URL、HTTP 版本信息
  • 首部行:请求行的下一行一般为首部行的开始,包括主机域名、连接信息、用户代理等等信息
  • 实体主体:一般不使用

请求信息的示例

> GET /uploads/user/avatar/31438/8216a3.jpg\u0021md HTTP/1.1 > Host: testerhome.com > Accept-Encoding: deflate, gzip > Connection: keep-alive > Pragma: no-cache > Cache-Control: no-cache > User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_0)\ AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36 > Sec-Fetch-Dest: image > Accept: image/webp,image/apng,image/*,*/*;q=0.8 > Sec-Fetch-Site: same-origin > Sec-Fetch-Mode: no-cors > Referer: https://testerhome.com/ > Accept-Language: en,zh-CN;q=0.9,zh;q=0.8 > Cookie: user_id=bnVsbA==--69ec4bae7d601a6036395dbe51d1d2ffcd6fa592; \ _homeland_session=7Sukl/rozWDlCgKard4LDAggLFboqpOh2O2tuEDrKAJQsGcBr+Eo\ 5YfUSQ+zCnQjz2YqVdLJZynbXI7rd96gawXmb/ckmcX0VRzKeJUzg/ddCkdLxHrPxOwD\ BugHvSRINOfLKfJSrX/7u+Jqx8ZJ/UzMrdBw9PqmLTgKp9qG2hVRMmFvRdLoAg3Hj0WQ\ XoYmEkMwlfG+JTFpE2D8IdyN49iAkEcCu8mY/wYUXg/NdYyLZ29AEkdLU+FhU1GIXZ\ yYnBIfB4B34Z+uwST1/2wZ0Lr0YYaVC7MmYg==--5Lp2FdyHJUsrhoaz--iUv+p1\ 4+z76Qteb/sjsKHQ==; _ga=GA1.2.877690763.1584004389; _gid=GA1.2.135\ 846535.1584004389; _gat=1 >

请求报文的方法

http协议如何测试,http协议是怎么实现的(2)

常用的请求报文的方法为 GET、POST。会在后面的章节中进行详述。

响应报文

http协议如何测试,http协议是怎么实现的(3)

1、状态行:HTTP 版本、状态码、解释状态码短语

2、首部行:服务器信息、时间、内容类型、内容长度等等

3、实体主体

响应信息的示例

< HTTP/1.1 200 OK < Server: nginx/1.10.2 < Date: Thu, 12 Mar 2020 09:13:44 GMT < Content-Type: image/png < Content-Length: 11390 < Last-Modified: Sat, 27 Jan 2018 13:51:30 GMT < Connection: keep-alive < ETag: "5a6c83e2-2c7e" < Accept-Ranges: bytes <状态码

状态码有 5 个大类,由第一位数字进行区分,每个大类下面还有不同的子类,每种子类的长度都是 3 位,都代表一个状态码,即一种类型的返回的信息。

  • 1xx 表示通知信息,如请求收到了或正在进行处理
  • 2xx 表示成功,如接受或知道了
  • 3xx 表示重定向,如果要完成请求还必须才去进一步的行动
  • 4xx 表示客户端的差错
  • 5xx 表示服务器的差错

更多学习资料戳下方!!!

栏目热文

http 双向认证(ssl双向认证流程图)

http 双向认证(ssl双向认证流程图)

简述本文主要介绍HTTPS以及SSL单向验证和双向验证。HTTPS介绍HTTPS是一种通过计算机网络进行安全通信的传输协...

2022-11-09 14:18:05查看全文 >>

http请求数怎么消除(http请求最大处理时间)

http请求数怎么消除(http请求最大处理时间)

背景做过前端开发都知道前端的工作内容是很多的,对于HTML、CSS、Javascript、Image、Flash等各种内...

2022-11-09 14:06:53查看全文 >>

http请求怎么设置(http请求怎么操作)

http请求怎么设置(http请求怎么操作)

最近在学习做网站开发,有一个小功能需要记录并显示文章的阅读数量。我想出来的方案是,服务器接到浏览器的阅读文章的请求时,从...

2022-11-09 13:47:41查看全文 >>

什么是http认证(http请求的两种认证方式)

什么是http认证(http请求的两种认证方式)

我们现在所处的时代,是最公平的时代,也是最不公平的时代。它给予不同行业的人相同的尊重,也允许不同学历的人通过努力和勤奋获...

2022-11-09 13:59:54查看全文 >>

怎样减少http请求(http请求响应时间过长)

怎样减少http请求(http请求响应时间过长)

1. 使用内容分发网络 (CDN)内容交付网络是分布在不同地理位置的一组 Web 服务器,这些服务器根据最终用户的位置向...

2022-11-09 13:44:39查看全文 >>

怎么禁用http协议(http协议被篡改无法上网)

怎么禁用http协议(http协议被篡改无法上网)

问题现象某应用在压测过程中,发现OTSClient与OTS服务端之间的TCP连接有大量处于TIME_WAIT状态。查看与...

2022-11-09 14:19:05查看全文 >>

哪些http方法应该禁用(http协议怎么更安全)

哪些http方法应该禁用(http协议怎么更安全)

常见的62种http响应代码整理,当网站出现流量下降,索引下降,Robots检测失败,无法访问时,首先应检查HTTP响应...

2022-11-09 13:45:23查看全文 >>

2022年世俱杯城市名单(2023世俱杯主办城市)

2022年世俱杯城市名单(2023世俱杯主办城市)

新京报讯(记者 邓涵予)在今日举行的FIFA国际足联理事会新闻发布会上,国际足联主席因凡蒂诺正式宣布,2021年世俱杯落...

2022-11-09 14:15:10查看全文 >>

2022年世俱杯在哪举行(2022年世俱杯在哪里)

2022年世俱杯在哪举行(2022年世俱杯在哪里)

本报讯(记者 赵睿)昨天,中国足协发布公告,称原定于2021年在中国举行的新版世俱杯将延期进行。旧版世俱杯明年在日本举行...

2022-11-09 14:22:07查看全文 >>

世俱杯历届举办地(世俱杯历届决赛主场)

世俱杯历届举办地(世俱杯历届决赛主场)

北京时间2月13日凌晨,国际足联世俱杯赛进行了最后的决赛,英超的切尔西凭借哈弗茨在加时赛中的致胜点球,以2-1击败巴甲的...

2022-11-09 14:10:52查看全文 >>

文档排行