表面的区别

1. GET在浏览器回退时是无害的,而POST会再次提交请求。

2. GET产生的URL地址可以被Bookmark,而POST不可以。

3. GET请求会被浏览器主动cache,而POST不会,除非手动设置。

4. GET请求只能进行url编码,而POST支持多种编码方式。

5. GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。

6. get方式提交数据的大小(一般来说1024字节),http协议并没有硬性限制,而是与浏览器、服务器、操作系统有关,而POST理论上来说没有大小限制,http协议规范也没有进行大小限制,但实际上post所能传递的数据量根据取决于服务器的设置和内存大小。

7. 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。

8. GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。

9. GET参数通过URL传递,POST放在Request body中。

没有区别的回答

GET和POST是HTTP协议中的两种发送请求的方法。

HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。

HTTP的底层是TCP/IP。所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。GET和POST能做的事情是一样一样的。你要给GET加上request body,给POST带上url参数,技术上是完全行的通的。

GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。

重大区别

GET产生一个TCP数据包;POST产生两个TCP数据包。

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);

而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

因为POST需要两步,时间上消耗的要多一点,看起来GET比POST更有效。因此Yahoo团队有推荐用GET替换POST来优化网站性能。但这是一个坑!跳入需谨慎。

1. GET与POST都有自己的语义,不能随便混用。

2. 据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。

3. 并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。

看了这么多,是不是会觉得一脸懵逼,在你做项目的时候要注意:

get一般是用来获取数据,post提交数据

post其实是有大小限制的,只不过是取决于服务器的设置和内存大小。

还有更深入的区别:

GET是用来向获取服务器信息的,请求报文传输的信息只是用于描述所需资源的参数,返回的信息才是数据本身;POST是用来向服务器传递数据的,其请求报文传递的信息就是数据本身,返回的报文只是操作的结果。

大概我就先说这么多吧!

不足的各位请补充

c语言 get post,简述GET和POST的区别相关推荐

  1. 傲游浏览器语言怎么切换 傲游浏览器语言切换方法简述

    作为一款多功能.个性化.多标签的浏览器产品,傲游浏览器不仅能够有效减少浏览器对系统资源的占用率,还内置了大量的贴心功能,其中便包括浏览器语言切换.那么,傲游浏览器语言要怎么切换呢?不清楚具体步骤的朋友 ...

  2. java语言基于什么区别_Java语言程序有几种?它们有什么区别?

    [判断题]镜片表面弯度是以镜度来表示的,镜度越大镜片弯曲度越大. [判断题]4 △ 基底向右眼颞侧的三棱镜,可表示为4 △ BO. [单选题]用顶焦度计测镜片的测前准备中可不做的步骤为( ). [判断 ...

  3. 简述 Hibernate 和 JDBC 的区别、优缺点

    1.hibernate是一个开源的.采用面向对象的思想实现ORM映射框架,它对jdbc进行了一层封装,对于数据库的连接.关闭.数据的持久化(增删改查).事务的管理都进行了封装,使得程序开发的时候可以用 ...

  4. C语言中()和【】的区别?

    C语言中()和[]的区别? 1.注意()是初始化,[]是定义多个对象. 2.int* p = new int (100) 是创建一个int型的内存,并赋值为100; int *p = new int[ ...

  5. 21.C 语言与 C++在内存分配有什么区别?

    C 语言与 C++在内存分配有什么区别? 在C语言中通过malloc和free来分配.释放内存空间:在C++语言中通过new和delete来分配和释放内存空间. malloc/free和new/del ...

  6. c语言结构共用体的作用,浅谈C语言共用体和与结构体的区别

    共用体与结构体的区别 共用体: 使用union 关键字 共用体内存长度是内部最长的数据类型的长度. 共用体的地址和内部各成员变量的地址都是同一个地址 结构体大小: 结构体内部的成员,大小等于最后一个成 ...

  7. c语言中换行符与回车符的区别,C语言中换行符与回车符的区别

    本文章详细介绍了回车与换行符的由来和区别.讲解,通俗易懂,可以使自己深入理解它们 C语言中换行符与回车符的区别 能不能说"换行符就是输入完一行内容后,光标转到下一行的起始位置",而 ...

  8. 微型直流减速电机简述:无刷电机与有刷电机区别分析

    参考文献 [1] 刘爱民, 倪元相. 电机与拖动技术[M]. 第二版. 大连:大连理工大学出版社, 2017. [2] 王爱元. 控制电机及其应用[M]. 第一版. 上海:上海交通大学出版社, 201 ...

  9. c语言中不用换行读符而直接换行,C语言中换行符与回车符的区别

    1.C 语言中换行符与回车符的区别能不能说"换行符就是输入完一行内容后,光标转到下一行的起始位置",而"回车符就是输入完一行后光标转到该行的起始位置,其并不换行" ...

最新文章

  1. php遍历指定目录中的内容2
  2. C# 如何调用EventLog
  3. CSDN怎么转载别人的博客
  4. linux交叉编译aix_mips-linux-gcc交叉编译工具链搭建小结【转】
  5. 【转载保存】dubbo学习笔记
  6. 用C++实现十进制转二进制【个人思想】
  7. 10.8-全栈Java笔记:序列化/反序列化的步骤和实例
  8. Redis的碎片整理功能只有在使用jemalloc的时候才支持
  9. 理论分析IRLS迭代加权最小二乘法(根据Gorodnitsky and Rao)
  10. 如何在苹果Mac上截屏或录制屏幕?
  11. heidsql(mysql)安装教程和mysql修改密码
  12. cai计算机辅助教程,拓展:计算机辅助教学(CAI)的基本模式
  13. 阿里巴巴面试题- - -Java体系最新面试题(2022内部资料)
  14. @Transactional你知道多少?
  15. 计算机学生会大型户外活动,学生会户外活动策划方案
  16. 英语流利说19秋招笔试总结
  17. 北航计算机控制系统实验报告,北航计算机控制系统实验报告资料.doc
  18. UVM:解决phase的执行顺序
  19. iPhone 忘记了密码怎么办?
  20. 1619 例题 Prime Distance(POJ2689 LOJ10197 UVA10140 提高+/省选-) 线性筛 映射关系 0分 筛出区间内质数 超时0分 求任意区间质数的筛子100分

热门文章

  1. 简单小清新植物点缀绿色花边边框,圣诞节花环节日PNG素材
  2. UI素材干货模板|网页“按钮”组件,教你要如何设计!
  3. 如何判断 cxgrid 双击了哪一列_学会根据三视图判断组成几何体的个数,助你中考数学满分...
  4. .和- 区别(C++)
  5. likely() 和 unlikely()内建宏定义函数
  6. OpenGL学习笔记:颜色(RGBA颜色,颜色索引模式)
  7. python多线程实现方法_Python3 多线程的两种实现方式
  8. python匿名函数使用
  9. php通过ip地址查询位置,PHP通过IP获取地理位置
  10. qlabel 显示图片后大小不变_图形编程:QT使用scrollarea显示图片的解决方案