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 上的参数会保留在浏览器历史记录里, 而请求体不会被保留, 除非用代码设置

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

相关推荐
IT_陈寒4 分钟前
Redis的原子性竟然失效了?记一次分布式锁翻车实录
前端·人工智能·后端
时间的情敌2 小时前
《回顾 2018 前端:Vue2 成熟期,Webpack4 发布,PWA 大火》
前端
Java后端的Ai之路2 小时前
前端技术Vue-09-webpack-vuejs-实战
前端·vue.js·webpack
LMT流氓兔2 小时前
第五单元——第4课:给工具参数加校验
java·前端·算法·ai·langchain
涛涛ing2 小时前
React Compiler正式“Rust化”:你项目里的Babel插件,正在被编译进打包器
前端
迷迭绿2 小时前
Cesium 轨迹回放播放器
前端·javascript·cesium
HolySaga3 小时前
我用 UTS 写了一个三端同构的蓝牙插件(Android / iOS / 鸿蒙 NEXT),把踩过的坑都讲给你听
前端
程序员老赵3 小时前
Docker 部署 XWiki:轻松搭建企业知识库与协作 Wiki
前端·docker·开源
console.log('npc')3 小时前
第 10 章 更多业务模块扩展
前端·人工智能·大模型
行者全栈架构师3 小时前
我用 TRAE Work 把桌游之夜搬进了浏览器:一个计分器的从创意到上线
前端·算法·架构