1.POST和GET请求数据包
1.1POST请求数据包
POST /exercise.php HTTP/1.1
Host: localhost:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,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: 11
Origin: null
Connection: close
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: cross-sitecontent=100
1.2GET请求数据包
GET /exercise.php?content=100 HTTP/1.1
Host: localhost:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,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: close
Cookie: Phpstorm-6bb991fc=1f7a102a-5309-48e2-95c8-aeb050dd1fe2
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
2.POST和GET请求数据包的相同点
都包括以下四点:
- 请求行
- 请求头部
- 空行
- 请求数据
3.POST和GET请求数据包的不同点
POST
POST /exercise.php HTTP/1.1
content=100
GET
GET /exercise.php?content=100 HTTP/1.1
可以看到,在传输参数的时候,以POST传输的数据是在空行下面才有数据包的信息,而GET方式下在请求行就把参数表示出来了,所有如果要伪造参数的话,这一区别需要注意
3.请求头各字段的含义
由关键字/值对组成,每行一对,关键字和值用冒号分享。请求头标通知服务器腾于客户端的功能和标识。
HOST
: 主机或域名地址
Accept
:指浏览器或其他客户可以接爱的 MIME 文件格式。Servlet
可以根据它判断并返回适当的文件格
式。
User-Agent
:是客户浏览器名称
Host
:对应网址 URL 中的 Web 名称和端口号。
Accept-Langeuage
:指出浏览器可以接受的语言种类,如 en 或 en-us,指英语。
connection
:用来告诉服务器是否可以维持固定的 HTTP 连接。http 是无连接的,HTTP/1.1 使用 Keep-Alive
为默认值,这样,当浏览器需要多个文件时(比如一个 HTML 文件和相关的图形文件),不需要每次都建立
连接
Cookie
:浏览器用这个属性向服务器发送 Cookie。Cookie 是在浏览器中寄存的小型数据体,它可以记载
和服务器相关的用户信息,也可以用来实现会话功能。
Referer
: 表 明 产 生 请 求 的 网 页 URL 。 如 比 从 网 页 /icconcept/index.jsp 中 点 击 一 个 链 接 到 网 页
/icwork/search , 在 向 服 务 器 发 送 的 GET/icwork/search 中 的 请 求 中 , Referer 是
http://hostname:8080/icconcept/index.jsp。这个属性可以用来跟踪 Web 请求是从什么网站来的。
Content-Type
:用来表名 request 的内容类型。可以用 HttpServletRequest 的 getContentType()方法取得。
Accept-Charset:
指出浏览器可以接受的字符编码。英文浏览器的默认值是 ISO-8859-1.
Accept-Encoding:
指出浏览器可以接受的编码方式。编码方式不同于文件格式,它是为了压缩文件并加
速文件传递速度。浏览器在接收到 Web 响应之后先解码,然后再检查文件格式。
X-Forwarded-For:
简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项
5.重要字段的含义
5.1 cookie
Request 和 Response 对象起到了服务器与客户机之间的信息传递作用。
Request 对象用于接收客户端浏览器提交的数据,
Response 对象的功能则是将服务器端的数据发送到客户端浏览器。
比如说你进入一个网站,输入你的密码和用户名,客户端就会把你的信息传递给服务器,传递信息(用户名,密码)的载体就是Cookie,request就是一串数据,其中就会包括Cookie等信息,服务器接收request信息后,就会给客户端发送response应答(密码正确还是错误)
response:(一般有服务器名称)
Connection: Keep-Alive
Content-Encoding: gzip
Content-Length: 253
Content-Type: text/html
Date: Thu, 07 Apr 2022 03:06:36 GMT
flag: cyberpeace{b96c80999a82b4f8eb5b2241cabde6b8}
Keep-Alive: timeout=5, max=99
Server: Apache/2.4.7 (Ubuntu)
Vary: Accept-Encoding
X-Powered-By: PHP/5.5.9-1ubuntu4.26request:
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Cache-Control: max-age=0
Connection: keep-alive
Cookie: look-here=cookie.php
Host: 111.200.241.244:50280
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Mobile Safari/537.36 Edg/100.0.1185.29
发表评论 取消回复