HTTP请求消息的数据格式

servletRequest获取请求消息

分为4部分
1.请求行

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

特点:行和头之间没有任何分隔,请求行下面就连着请求头

请求方式:HTTP协议有7种请求方式,常用的有两种get:1.请求参数在请求行中,url后
2.请求的url有长度限制3.不安全,信息都在url后

post:1.请求参数在请求体中

2.请求的url长度没有限制 3.相对安全,信息在请求体中

文件的上传只能用post方式,文件大,超出了get请求的url限制

2.请求头

请求头名称:请求值

多个值用,分隔开

3.请求空行

空行:分隔作用,分隔请求头和请求体

4.请求体(正文)参数

get方式没有请求体

post就会出现请求体



具体的字符串格式  (火狐F12网络)

GET/login.html HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;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
Connection: keep-alive
Upgrade-Insecure-Requests: 1
If-Modified-Since: Thu, 20 Feb 2020 04:47:18 GMT
If-None-Match: W/"272-1582174038444"

POST /login.html HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;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
Content-Type: application/x-www-form-urlencoded
Content-Length: 18
Origin: http://localhost:8080
Connection: keep-alive
Referer: http://localhost:8080/login.html
Upgrade-Insecure-Requests: 1

?username=zhang

原文地址:https://www.cnblogs.com/rijiyuelei/p/12335114.html

时间: 2024-11-09 17:46:01

HTTP请求消息的数据格式的相关文章

第三篇 :微信公众平台开发实战之请求消息,响应消息以及事件消息类的封装

微信服务器和第三方服务器之间究竟是通过什么方式进行对话的? 下面,我们先看下图: 其实我们可以简单的理解: (1)首先,用户向微信服务器发送消息: (2)微信服务器接收到用户的消息处理之后,通过开发者配置的URL和Token 来找到第三方服务器,并以XML形式向第三方服务器发送消息. (3)第三方服务器获取这些消息之后,需要按照微信服务器传过来的XML的语言进行解析,获取到信息之后,根据用户的需求,提供服务,然后封装成XML数据,传回到微信服务器上去. (4)微信服务器解析这些XML,并把相应的

Senparc.Weixin.MP SDK 微信公众平台开发教程(十四):请求消息去重

原文:Senparc.Weixin.MP SDK 微信公众平台开发教程(十四):请求消息去重 为了确保信息请求消息的到达率,微信服务器在没有及时收到响应消息(ResponseMessage)的情况下,会多次发送同一条请求消息(RequestMessage),包括MsgId等在内的所有文本内容都是一致的. 这种机制确保了在诸如网络状况不佳的情况下消息的回复成功率,但是有时候由于服务器负荷.本身请求过程就需要好几秒才能完成等情况,多次重复的消息反而成了服务器的负担,甚至对业务和数据也可能造成影响.

HTTP 请求消息头部实例:

HTTP 请求消息头部实例: Host:rss.sina.com.cn        //客户端指定自己想访问的WEB服务器的域名/IP 地址和端口号User-Agent:Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14              //头域的内容包含发出请求的用户信息. Accept:text/xml,application/xml,applic

http之请求消息request

户端发送一个HTTP请求到服务器的请求消息包括以下格式: 请求行(request line).请求头部(header).空行和请求数据四个部分组成. 原文地址:https://www.cnblogs.com/igoodful/p/9354888.html

springboot成神之——websocket发送和请求消息

本文介绍如何使用websocket发送和请求消息 项目目录 依赖 DemoApplication MessageModel WebConfig WebSocketConfig HttpHandshakeInterceptor WebSocketEventListener WebSocketController 前端测试 本文介绍如何使用websocket发送和请求消息 项目目录 依赖 <dependency> <groupId>org.springframework.boot<

网络是怎样连接的-第一章-生成HTTP请求消息(下)

1.1.5 生成 HTTP 请求消息 理解了 HTTP 的基本知识之后,让我们回到对浏览器本身的探索中来. 对 URL 进行解析之后,浏览器确定了 Web 服务器和文件名,接下来就是根据这些信息来生成 HTTP 请求消息了.实际上,HTTP 消息在格式上是有严格规定的,因此浏览器会按照规定的格式来生成请求消息,如下图所示: 请求行 请求消息的第一行称为请求行,这里的重点是最开头的方法,方法可以告诉 Web 服务器它应该进行怎样的操作. 不过这里必须先解决一个问题,那就是方法有很多种,我们必须先判

如何在 webApi 当中接收 Gzip 压缩或者加密后的 请求消息内容!

今天在上班的时候遇到个问题,移动端要求我们用GZIP加密.当时一想着多简单,但是在做的时候发现个问题. 就是移动端Post到 服务端的数据也是经过 Gzip的,并不是单一的像网站那样只针对网页进行 压缩. 下面是我的处理办法: 重写 :DelegatingHandler抽象类 protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, System.Threading.Cancellati

tomcat9以后对,请求消息头的严格字符要求

公司tomcat从8.0.22更换到高版本的9.0.22以后,postman请求没问题,但是终端请求总是400 报Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986错, 解决: 在tomcat的conf/server.xml  的Connector中添加:relaxedQueryChars="{}|[],%" relaxedPat

HTTP的请求方法一共有9种,有OPTIONS, HEAD, GET, POST等等(消息头有图,十分清楚)

请求方法:指定了客户端想对指定的资源/服务器作何种操作 下面我们介绍HTTP/1.1中可用的请求方法: [GET:获取资源]     GET方法用来请求已被URI识别的资源.指定的资源经服务器端解析后返回响应内容(也就是说,如果请求的资源是文本,那就保持原样返回:如果是CGI[通用网关接口]那样的程序,则返回经过执行后的输出结果).     最常用于向服务器查询某些信息.必要时,可以将查询字符串参数追加到URL末尾,以便将信息发送给服务器.     使用GET请求时经常会发生的一个错误,就是查询