GET 和 POST 方式区别

目标

目标: 理解 GET 和 POST 请求方式的区别

分支名: get_post

注意: 后端采用 express 编写

●npm i 安装依赖

●npm run start 启动后端接口项目

●即可在前端发起测试

效果

可以自行查看 network 里, 发现 GET 方式无法携带请求体, 浏览器做的限制

项目运行效果说明:后端会把收到的 GET / POST 方式的参数在响应体返回给浏览器打印(间接测试后端是否收到前端发去的参数)

利用 apifox 接口测试工具发起, 发现无论是 GET 还是 POST 方式都可以携带查询参数和请求体

逐字稿

1GET 和 POST 请求方式无区别, 本质都是一次 HTTP 请求 ( TCP 链接 ), 而HTTP 请求报文中都包含请求行, 请求头, 请求体

a图解:

b我们可以在相应位置携带值给服务器

2但是GET或HEAD请求方式, 浏览器会忽略请求体, 但不代表 GET/HEAD 方式无法发送请求体, 使用 apifox 等接口调试工具是可以携带请求体的

3非要说区别有如下几点

a浏览器回退的时候, GET 不会重新提交, 而 POST 会重新提交表单

bGET 会被浏览器主动缓存, POST 不会

c再就是 url 上传查询参数和请求体传参的区别了(实际上不是 GET 和 POST 区别了)

ⅰurl 上只能进行 url 编码, 而请求体里支持多种编码格式

ⅱurl 上的参数会保留在浏览器历史记录里, 而请求体不会被保留, 除非用代码设置

*上文笔者网上拷贝的自己看的同时希望对你有帮助

相关推荐
Agent世界2 小时前
用 CDP 做发布自动化:四道机器闸门与产物验收
前端·javascript
FungLeo2 小时前
成为全栈·Vue 管理后台篇·编辑器图片上传:从文件选择到文章附件关联
前端·vue.js·编辑器·markdown·文件上传·formdata·附件管理
某哈压力大2 小时前
SSH 突然 Connection reset?不是密钥坏了,是 OpenSSL 把 sshd 干趴了
前端·node.js·命令行
程序员大阳2 小时前
副队长ES6+教程(3)--解构赋值
前端·javascript·es6·赋值·解构
神膘护体小月半3 小时前
css - 元素背景图由 hover 触发,初次加载时闪动的解决办法
前端·javascript·css
程序员大阳3 小时前
副队长ES6+教程(2)--let 与 const
前端·javascript·es6·const·let·var
deli0073 小时前
写满 200GB 后 SSD 为什么掉到 95MB/s?SLC 缓存模型实测
前端
曦樂~4 小时前
【Web Development】03JavaScript 基础和事件
开发语言·前端·javascript
deli0074 小时前
HTTPS 的锁是怎么挂上的?TLS 1.3 握手 6 步实测
前端
程序员大阳4 小时前
副队长ES6+教程(1)--ES6+初识
前端·ecmascript·es6