aBigRoybot

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zky5184.blog.51cto.com/1289038/288186
http中get,post,put和delect方法对应查询,修改,增加和删除。最常用的是get一般用于获取或查询资源,post一般用于更新资源。
根据http规范
1.get不会修改信息,只会查询信息。
2.post可以修改资源信息。
实际操作当中,get和post方法都可以实现查询,修改,增加和删除,很多人不按http规范操作,直接使用get方法实现资源更新,因为post方法必须使用form,会比较麻烦
表象看get和post的区别:
1.数据位置
(1)get请求的数据出现在url当中(http协议头),以?分割url和传输的数据,参数之间以&相连。英文字母/数字,原样发送,空格,转换为%,中文/其他字符,直接把字符串用base64加密。%xx表示xx为16进制数。
(2)post把提交数据放置在http包的包体中
2.数据长度限制
(1)受浏览器的限制,IE对url长度限制是2083字节,其他浏览器,理论上没限制,限制取决于操作系统。
(2)post理论上没有数据限制,限制取决于服务器的处理能力。
(3)iis6.0,微软出于安全考虑,加大了限制。asp post数据量最大为200kB,每个表单域限制是100kB。默认上传文件的最大为4MB。默认最大请求头是16KB。iis6.0之前没有限制。
3.安全性
(1)get以明文方式提交数据,account和password明文出现在url上,登录页面有可能被浏览器缓存,其他人查看到浏览器的历史记录,可以轻易拿到你的account和pw,还可能跨站攻击

posted on 2011-12-02 18:36  aBigRoybot  阅读(294)  评论(0编辑  收藏  举报