首页 > 其他分享 >HTTP请求消息数据格式详解(请求头,请求行,请求体)

HTTP请求消息数据格式详解(请求头,请求行,请求体)

时间:2024-04-02 18:00:31浏览次数:22  
标签:HTTP 请求 html 数据格式 POST login

HTTP:
概念:Hyper Text Transfer Protocol 超文本传输协议

传输协议:定义了,客户端和服务器端通信时,发送数据的格式
特点:

基于TCP/IP的高级协议
默认端口号:80
基于请求/响应模型的:一次请求对应一次响应
无状态的:每次请求之间相互独立,不能交互数据
历史版本:

1.0:每一次请求响应都会建立新的连接
1.1:复用连接
请求消息数据格式:

 

1.请求行
请求行包括三部分:

请求方式 请求url 请求协议/版本
GET /login.html HTTP/1.1
请求方式:

HTTP协议有7中请求方式,常用的有2种
GET:
1. 请求参数在请求行中,在url后。
2. 请求的url长度有限制的
3. 不太安全
POST:
1. 请求参数在请求体中
2. 请求的url长度没有限制的
3. 相对安全
2.请求头:客户端浏览器告诉服务器一些信息
请求头名称: 请求头值

常见的请求头:
User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息
可以在服务器端获取该头的信息,解决浏览器的兼容性问题
Referer:http://localhost/login.html
* 告诉服务器,我(当前请求)从哪里来?
* 作用:
1. 防盗链:
2. 统计工作:
3. 请求空行
空行,就是用于分割POST请求的请求头,和请求体的。

4. 请求体(正文):
封装POST请求消息的请求参数的

字符串格式:

POST /login.html HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://localhost/login.html
Connection: keep-alive
Upgrade-Insecure-Requests: 1

username=zhangsan

响应消息数据格式

标签:HTTP,请求,html,数据格式,POST,login
From: https://www.cnblogs.com/zhaoshengfu/p/18111200

相关文章

  • 复制浏览器请求到Postman
    1.复制链接F12打开开发者模式 2.导入到Postman   如上图所示,参数及cookie等信息都被导入进来。......
  • 基于http方式的portal 认证-对外
    之前portal认证都是使用的portal协议。目前需要支持所有厂商http协议华为:URL:https://support.huawei.com/enterprise/zh/doc/EDOC1100127139/609549d8#ZH-CN_CONCEPT_0176368423 华三:URL:https://www.h3c.com/cn/d_201908/1222239_30005_0.htm 思科:URL:https://github......
  • 搜索Maven相关依赖jar包(特别推荐)https://mvnrepository.com/
    搜索Maven相关依赖jar包(特别推荐)https://mvnrepository.com/根据maven查询jar包的步骤如下:打开Maven仓库中央库的网站https://mvnrepository.com/在搜索框中输入你需要查询的jar包的名称,例如:hutool-all点击搜索按钮,网站会列出所有符合条件的jar包信息,包括版本号、最近更新时间......
  • HTTP协议格式详解之首行信息解析
    HTTP(HypertextTransferProtocol)是一种用于传输超文本文档的应用层协议,通常用于在客户端和服务器之间传输网页、图片、视频等资源。它是建立在TCP/IP协议栈之上的应用层协议,使用标准的TCP连接来传输数据。HTTP的主要特点包括简单、灵活、可扩展性强等。在OSI(OpenSystemsInt......
  • C# HTTP帮助类
    HTTP请求类型枚举namespaceDemo{///<summary>///HTTP请求类型///</summary>publicenumHttpRequestType{///<summary>///GET请求///</summary>GET,///<summary>......
  • 强!10.6K star,一款开源HTTP测试工具,适合新手,简单、容易上手!
    大家好,我是狂师!今天给大家推荐一款开源的HTTP测试工具:Hurl,相比curl、wget功能更强大,且更容易上手、很适用新手使用。1、项目介绍Hurl是一个使用Rust语言开发的命令行工具,它允许用户运行以简单纯文本格式定义的HTTP请求。这个工具不仅适用于获取数据,还非常适合用于测试HTTP会话......
  • 【Frida】【Android】08_爬虫之网络通信库okhttp3
    ......
  • Servlet通常如何通过重写父类HttpServlet的doGet()、doPost()等方法来处理不同类型的H
    Servlet在JavaWeb应用程序中用于处理HTTP请求。javax.servlet.http.HttpServlet是一个抽象类,它提供了处理HTTP请求的标准机制。当您创建一个Servlet并让它继承自HttpServlet时,您可以重写其中的doGet()和doPost()方法以便分别处理GET和POST类型的HTTP请求。以下是Servlet处......
  • 把请求参数放到 url 上
    get请求把查询条件放在url上现有功能,要求在前端传递一个id给后端,有下述两种情况加以区分:(/xxx/addYyy?id=${data})(/xxx/addYyy/${data})前端请求:(/xxx/addYyy?id=${data})这种id是作为查询参数(queryparameter)传递的。查询参数附加在URL的路径之后,以问号(?)开......
  • HTTPS ECDHE 握手解析(计算机网络)
    使用了ECDHE,在TLS第四次握手前,客户端就已经发送了加密的HTTP数据,而对于RSA握手过程,必须要完成TLS四次握手,才能传输应用数据。所以,ECDHE相比RSA握手过程省去了一个消息往返的时间,有点「抢跑」的意思,它被称为是「TLSFalseStart」,跟「TCPFastOpen」有点像,都是在......