Get和Post提交的区别,这是你想要的回答吗?

   相信大家都使用过不少的Get或者Post提交的函数了吧,可能你们觉得我写这个内容对你毫无作用。可你是真的了解Get和Post提交的区别了吗?真的有深入了解Get和Post提交的区别吗?相信很多人回答Get和Post提交的区别是以下几点。
1、get将表单中数据按照name=value的形式,添加到action 所指向的URL 后面,并且两者使用"?“连接,而各个变量之间使用”&"连接;post是将表单中的数据放在HTTP协议的请求头或消息体中,传递到action所指向URL。
2、get传输的数据要受到URL长度的限制(1024字节);而post就可以存放大量的数据,通常用作文件上传。
3、get请求是从服务器上获取资源,而post是用来向服务器提交数据。
4、使用get时参数会显示在地址栏上,如果这些数据不是敏感数据,那么可以使用get;对于敏感数据还是应用使用post;
5、get比post更不安全。
(1)、get请求参数直接暴露在url中,所以不能用来传递敏感信息。
(2)、get请求只能进行url编码,而post支持多种编码方式。
(3)、get请求会浏览器主动cache,而post支持多种编码方式。
(4)、get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留。

第一、HTTP是什么?

   HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。HTTP的底层是TCP/IP。所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。
HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同的操作方式
HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法
具体每个请求的含义请看下图:
在这里插入图片描述

第二、get传输的数据要受到URL长度的限制(1024字节);而post就可以存放大量的数据呢!归根到底,其实是Http的get方法提交的数据大小长度并没有限制,Http协议规范没有对URL长度进行限制。目前说的get长度有限制,是特定的浏览器及服务器对它的限制。

各种浏览器和服务器的最大处理能力如下:
1、 IE:对URL的最大限制为2083个字符,若超出这个数字,提交按钮没有任何反应。
2、 Firefox:对Firefox浏览器URL的长度限制为:65536个字符。
3、 Safari:URL最大长度限制为80000个字符。
4、Opera:URL最大长度限制为190000个字符。
5、Google(chrome):URL最大长度限制为8182个字符。
6、Apache(Server):能接受的最大url长度为8192个字符(这个准确度待定???)
7、 Microsoft Internet Information Server(IIS):n能接受最大url的长度为16384个字符。

第三、使用get提交容易出现乱码。

   get是querystring(仅支持urlencode编码),post放在body(支持多种编码)。所以,我们文件上传一般都会使用form表达再设置enctype=“multipart/form-data” method=“post”。如果我们不设置就很容易出现乱码的问题,而from表达中的method不设置,则默认为get提交。
   到这里,你会不会对自己以前的认识get和post提交有所改变呢!其实在对于学习这方面,我个人觉得应该要有“打破砂锅问到底”的态度。对于初学者来说,很多知识点我们所了解的都是一些比较基层的认识。多问为什么可能会学到更多的东西哦!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值