一、概述
又看到这篇文章:https://juejin.cn/post/6844903433674178574
这边篇文章的结论是:
GET
产生一个TCP
数据包;POST
产生两个TCP
数据包。
对于
GET
方式的请求,浏览器会把http header
和data
一并发送出去,服务器响应200
(返回数据);对于
POST
,浏览器先发送header
,服务器响应100 continue
,浏览器再发送data
,服务器响应200
(返回数据)。
那么就想着动手来验证一下。
先说实验结果:
- 简单
POST
请求,产生一个TCP
包(相对应概念) - 请求的数据过大,客户端会先发
header
请求并携带Expect: 100-continue
,服务端响应会返回HTTP/1.1 100
,之后才会发送真正请求数据 - 概念上:
TCP
是流式
二、实验
实验步骤:
- 启动服务,端口 8081
- 启动
wireshark
,过滤对应端口GET
请求POST
请求
(1) 启动服务,端口 8081
使用springboot
,启动服务:
Tips
: 是在本地启动的。
@RestController
class HelloController {
@GetMapping("/test/1"