网站首页 > 技术文章 正文
我们在Web表单提交,常常需要选择提交方法,这时我们会用到GET和POST方法。但关于它们之间的区别你又知道多少。今天我们就来了解它们
这两方法其实是HTTP协议中的请求方法(关于HTTP协议可以阅读之前我写的《解密Web通信协议——超文本传输协议》)我们先通过一个例子来看看它们之间的区别。
通过下面源代码来查看:
我们来看一下地址栏无输入时为:
file:///E:/~/~/Demo.html
我们测试时用户名和密码都为123456789
当我们用GET方法提交地址栏变为:
file:///E:/~/~/Demo.html?textfield=123456789&password=123456789&submit=提交#Url
再来看看post方法提交后为file:///E:/~/~/Demo.html#Url
我们不难看出当我们在输入密码时Get方法提交会把所有信息显示到地址栏,这样可以看出这样提交信息不安全。
它们没有很大区别都是TCP连接,但在HTTP规范不同和C/S限制导致它们有了区别如下:
- GET请求的数据会附在URL之后,以?分割URL,参数之间以&相连,POST方法把提交的数据放在HTTP包中。
- GET的长度受限于url的长度,理论上GET的URL长度可以无限长,但由于浏览器和服务器有限制。
- POST是没有大小限制的,HTTP协议规范也没有进行大小限制,起限制作用的是服务器的处理程序的处理能力
- POST的安全性要比GET的安全性高前面已经提到
post和get的选择
私密性的信息请求使用post。
查询信息和可以想要通过url分享的信息使用get。
如果有任何错误和纰漏,请私信我更正。
如果你有任何意见一定要私信告诉我,让我快速成长起来哟。
猜你喜欢
- 2024-10-21 前端工程师进阶:网络请求方法详解,GET和POST的区别
- 2024-10-21 如何使用postman做接口测试(菜鸟级攻略)
- 2024-10-21 VB6多线程执行Get请求(基于Curl库)
- 2024-10-21 解Bug之路-记一次调用外网服务概率性失败问题的排查
- 2024-10-21 Java如何发起http请求的实现(GET/POST)
- 2024-10-21 「前端 · 面试 」HTTP 总结(五)——GET 和 POST
- 2024-10-21 第六天二次注入sqlmap简单参数(sqlmap注入攻击实例)
- 2024-10-21 使用cpp-httplib库实现轻松HTTP请求,GET、POST应有尽有
- 2024-10-21 Node实战004:使用http模块处理GET与POST请求
- 2024-10-21 基于Netty TCP自定义协议开发,支持百万连接
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)