GET和POST的区别
2015-10-25 19:29
232 查看
根据HTTP规范,POST可能会修改服务器上的资源的请求。比如CSDN的博客,我们发表一篇文章或者看别人的博客提交一条评论是通过POST请求来实现的,为什么呢?因为在提交文章或者评论后资源就不同了,或者说资源被修改了,这些便是“不安全的方法”,所以,POST的请求方式是相对比较安全的方法。刚刚评论完博客,有感而发……
感觉博客中一直少一篇比较get和post的博客,所以,今天,决定好好的巩固一下基础知识……
是谁说的安全不安全和GET、POST没有关系。这个小段子,应该可以体会出这个说法多么的可笑。
觉得POST数据比GET数据安全的人会说“防君子不防小人;
中国小白多,能防小白用户就行了。”
“哼,”我不以为然,“那你怎么不说,URL参数都Encode过了,或是Base64一下,小白也看不懂啊。”
那人反驳道,“Encode太简单了,聪明点儿的小白很容易就可以Decode并修改掉。”
我笑道,“五十步笑百步耳,再聪明点儿的小白还会截包并重发呢,Opera就有这功能。”
那人阴险地祭出神器——最终解释权,说,“这个不算小白。”
我日啊。哈哈!
用一句话总结GET和POST的区别,GET的安全性较POST方式要差些,包含机密信息的话,建议用POST数据提交方式。在做数据查询时,建议用GET方式;而在做数据添加、修改、删除时,建议用POST方式。
感觉博客中一直少一篇比较get和post的博客,所以,今天,决定好好的巩固一下基础知识……
POST和GET的区别
1、原理不同:
一般我们在浏览器输入一个网址访问网站都是GET请求;在FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式。HTTP定义了与服务器交互的不同方式,其中最基本的四种:GET,POST,PUT,DELETE,HEAD,其中GET和HEAD被称为安全方法,因为使用GET和HEAD的HTTP请求不会产生什么动作。不会产生动作意味着GET和HEAD的HTTP请求不会在服务器上产生任何结果。但是安全方法并不是什么动作都不产生,这里的安全方法仅仅指不会修改信息。根据HTTP规范,POST可能会修改服务器上的资源的请求。2、数据量
GET传送的数据量较小,不能大于2KB。POST传送的数据量较大,一般默认为不受限制。3、安全性、效率
传统的比较都是觉得GET安全性非常低,POST安全性较高。因为GET请求的数据会暴露在地址栏中,而POST请求则不会。但是GET的执行效率比POST方法好。通过我们自己做的网站也是可以追踪到,GET提交的数据,用户名和密码将会明文出现在URL上,这样就给一些人一个机会,当别人拿到你的账号和密码之后后果不堪设想,听到这里突然毛骨悚然,但是又看到下面这样一则故事,顿时觉得这个世界还好……
最后附上一个小段子
是谁说的安全不安全和GET、POST没有关系。这个小段子,应该可以体会出这个说法多么的可笑。 觉得POST数据比GET数据安全的人会说“防君子不防小人;
中国小白多,能防小白用户就行了。”
“哼,”我不以为然,“那你怎么不说,URL参数都Encode过了,或是Base64一下,小白也看不懂啊。”
那人反驳道,“Encode太简单了,聪明点儿的小白很容易就可以Decode并修改掉。”
我笑道,“五十步笑百步耳,再聪明点儿的小白还会截包并重发呢,Opera就有这功能。”
那人阴险地祭出神器——最终解释权,说,“这个不算小白。”
我日啊。哈哈!
用一句话总结GET和POST的区别,GET的安全性较POST方式要差些,包含机密信息的话,建议用POST数据提交方式。在做数据查询时,建议用GET方式;而在做数据添加、修改、删除时,建议用POST方式。
相关文章推荐
- 学习笔记之数据结构与算法(三)
- 老板很有骨气:越是抱怨,越不给你涨工资,看你怎么样(转)
- 信息安全设计基础第七周学习总结
- CSS: body{font-size: 62.5%;}为什么???
- C++项目中的extern "C" {}
- mysql 学习记录(十六)--优化常用sql
- css min-width最小宽度与max-width最大宽度教程
- 使用延迟加载以及避免代码重复
- 周赛 题 1 light oj 1005【2015/10/24】
- 数据库五个例子总结
- JAVA多线程实现的三种方式
- getBytes()详解
- 第六周-数制转换
- libevent源码分析
- (2) 事务
- lambda表达式
- Ubuntu下Git安装-Git学习笔记
- Swift2.0中解决访问资源库函数 - (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error conte错误。
- android 55
- 【】Popmotion – 小巧,灵活的 JavaScript 运动引擎