HTTP-概述

概念

:Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。

原始数据格式

特点

  1. 基于TCP协议:面向连接,安全(三次握手)

  2. 基于请求-响应模型的:一次请求对应一次响应(无状态)

3.HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的。

缺点:多次请求间不能共享数据。

优点:速度快

HTTP-请求数据格式

请求行:请求数据第一行(请求方式,资源路径,协议及版本)

请求头:第二行开始,格式key :value

User-Agent:用来解决浏览器的兼容问题

请求体:只有post请求有,存放请求参数

清求方式-GET:请求参数在请求行中,没有请求体,如:/brand/findn11?name=0Pposstatus=1。GET请求大小是有限制的。

请求方式-POST:请求参数在请求体中,POST请求大小是没有限制的。

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="" method="get">
    姓名:<input type="text" name="name"><br>
    密码:<input type="password" name="password"><br>
    <input type="submit" value="提交"><br>
</form>
<br><br><br>
<form action="" method="post">
    姓名:<input type="text" name="name"><br>
    密码:<input type="password" name="password"><br>
    <input type="submit" value="提交"><br>
</form>

</body>
</html>

HTTP响应格式

响应行:响应数据第一行,(协议,状态码,描述)

响应头:第二行开始,格式key:value

响应体:最后一部分,存放响应数据

Content-Type表示该响应内容的类型,例如text/html,application/json。

Content-Length表示该响应内容的长度(字节数)。

Content-Encoding表示该响应压缩算法,例如gzip。

Cache-Control指示客户端应如何缓存,例如max-age=300表示可以最多缓存300秒。

Set-Cookie告诉浏览器为当前页面所在的域设置cookie。

状态码

1 xx响应中-临时状态码,表示请求已经接收,告诉客户端应该继续请求或者如果它已经完成则忽略它。

2xx成功-表示请求已经被成功接收,处理已完成

3xx重定向-重定向到其他地方;让客户端再发起一次请求以完成整个处理。

4xx责任在客户端。如:请求了不存在的资源、客户端未被授权、禁止访问等,客户端错误-处理发生错误

5xx服务器错误-处理发生错误,责任在服务端。如:程序抛出异常等。

状态码大全:https://cloud.tencent.com/developer/chapter/13553

HTTP-协议解析

解析请求返回响应我们可以用一系列工具

相关推荐
ch3nyuyu10 小时前
Ubuntu(乌班图)基础指令
linux·运维·网络
其实防守也摸鱼11 小时前
软件安全与漏洞--6、软件安全需求分析
网络·安全·网络安全·软件需求·等保·法律
firstacui11 小时前
MGRE实验
运维·服务器·网络
大卡片13 小时前
IO模型与并发服务器设计
运维·服务器·网络
IpdataCloud13 小时前
IPv6商用数据的IP离线库能解决哪些业务问题?适用场景与接入指南
网络·网络协议·tcp/ip
S1998_1997111609•X15 小时前
MacOS/ˉsh(so.))os.apkair/AI
开发语言·网络·人工智能
古城小栈16 小时前
hey 你好 “压测”
http·golang·开源
VOOHU-沃虎17 小时前
强抗振、高可靠:RJ45卡侬自锁连接器在工业恶劣环境中的选型指南
网络·工业控制
hhb_61817 小时前
Go高性能并发编程实战与底层原理剖析
运维·网络·golang
道清茗17 小时前
【RH294知识点汇总】第 6 章 《 管理复杂的 Play 和 Playbook 》常见问题
linux·服务器·网络