[-项目随笔-] 也谈Ajax的Get和Post的区别

        在项目应用Ajax时遇到了一个奇怪的问题,管理员登入系统后,对自己的帐号进行了管理,他修改了自己的密码,这没有什么问题,可是,等他退出系统后,发现用新密码不能登陆,只能用原来的密码登陆。问题出在哪儿呢?

       通过代码检查,我发现出问题出在发送请求时是采用了Get方式,改成Post之后正常了,那么Get和Post的区别究竟在哪儿呢?

       当使用GET方式时,浏览器将各个表单字段元素及其数据按照URL参数的格式附加在请求行中的资源路径后面,使用GET方式传递参数的数据量是有限制的,一般限制在1KB下。另外最重要的一点是,它会被客户端的浏览器缓存起来,那么,别人就可以从浏览器的历史记录中,读取到此客户的数据,比如帐号和密码等。因此,在某些情况下,get方法会带来严重的安全性问题。

        当使用POST方式时,浏览器把各表单字段元素及其数据作为HTTP消息的实体内容发送给Web服务器,而不是作为URL地址的参数进行传递,一次,使用POST方式传递的数据量要比使用GET方式传送的数据量大的多。

总之,GET方式传送数据量小,处理效率高,安全性低,会被缓存,而POST反之。

--------------------------------------------------

小技巧:为了避免缓存,可在请求之后加上一个时间戳参数。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值