1.参数

最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 
其次:Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度限制,只能传递大约1024字节。

2.用途

GET用于从服务器端获取数据,包括静态资源(HTML|JS|CSS|Image等等)、动态数据展示(列表数据、详情数据等等)。

POST用于向服务器提交数据,比如增删改数据,提交一个表单新建一个用户、或修改一个用户等。

3.缓存

GET时默认可以复用前面的请求数据作为缓存结果返回,此时以完整的URL作为缓存数据的KEY。所以有时候为了强制每次请求都是新数据,我们可以在URL后面加上一个随机参数Math.random或时间戳new Date().getTime()、或版本号。POST一般则不会被这些缓存因素影响。

4.安全性
默认对于nginx的access log,会自动记录get或post的完整URL,包括其中带的参数。

对于POST来说,请求的报文却不会被记录,这些对于敏感数据来说,POST更安全一些。

6.GET和POST对服务器的状态
根据http的设计,大家在看到get的时候,都期望这个请求对服务器没有修改,看到post的时候,都认为这对服务器产生了修改。

7.GET幂等,POST不幂等
1.按照RFC规范,PUT,DELETE和安全方法都是幂等的。虽说是规范,但服务端实现是否幂等是无法确保的。

2.引入幂等主要是为了处理同一个请求重复发送的情况,比如在请求响应前失去连接,如果方法是幂等的,就可以放心地重发一次请求。这也是浏览器在后退/刷新时遇到POST会给用户提示的原因:POST语义不是幂等的,重复请求可能会带来意想不到的后果。

3.比如在微博这个场景里,GET的语义会被用在「看看我的Timeline上最新的20条微博」这样的场景,而POST的语义会被用在「发微博、评论、点赞」这样的场景中。

Post请求和Get请求的区别相关推荐

  1. JSP、Servlet中get请求和post请求的区别总结

    在学习JavaWeb最初的开始阶段,大家都会遇到HttpServlet中的doGet和doPost方法.前两天看<Head First Servlets & JSP>看到其中讲关于 ...

  2. java中的post的作用,JSP、Servlet中get请求和post请求的区别总结

    在学习JavaWeb最初的开始阶段,大家都会遇到HttpServlet中的doGet和doPost方法.前两天看<Head First Servlets & JSP>看到其中讲关于 ...

  3. 客户端(前端)Ajax中Get请求和Post请求的区别

    我们在使用Ajax时,当我们向服务器发送数据时,我们可以采用Get方式请求服务器,也可以使用Post方式请求服务器.那么,Get请求和Post请求的区别到底在哪呢?  GET请求  get是最常见的请 ...

  4. 接口定义,常见的接口,常见的接口请求方式,put请求和patch请求的区别

    接口定义:应用程序编程接口,指前后端数据交互的一套标准,包括软件内部之间的接口,硬件之间的接口或者是软件对外的接口. 常见的接口类型:         1,Webservice接口,主要用于服务端的接 ...

  5. WEB中get请求和post请求的区别

    参考:https://blog.csdn.net/weixin_39361808/article/details/81136865 GET请求和POST请求是HTTP协议发送请求的两种基本方法. W3 ...

  6. get请求和post请求的区别(简洁易懂)

    一.GET和POST是什么? HTTP协议中的两种发送请求的方法,本质上都是在进行TCP连接. 二. GET请求和POST请求的区别是什么? GET请求参数是通过URL进行传递的,POST请求的参数包 ...

  7. post请求和get请求的区别面试题

    ** GET请求 和 POST 请求 ** get和post是 HTTP 请求的两种基本方法,至于区别大致分为以下六个方面 ** 1.url可见性: get,参数url可见: post,url参数不可 ...

  8. 简洁!get请求和post请求的区别——Web网络系列学习笔记

    一次网络交互分为以下三个部分 用户向服务器发送请求 服务器处理请求 服务器向用户返回响应 Get和Post是不同的用户请求方式 Get请求到达服务器后不会修改服务器上的数据, 以CSDN为例,点击查看 ...

  9. POST请求和PUT请求的区别

    结论: PUT请求:当两次请求相同时,第二次请求会覆盖第一次,一般用来更新资源 POST请求:第二次请求不会覆盖第一次,一般用来新增资源

最新文章

  1. 怎么用linux设计一个小程序,“Linux”小程序发布一个月后,我们发现了什么
  2. 01-从零开始学习VTK
  3. C# 加载 SQLite DLL问题
  4. Angular新建组件失败More than one module matches........
  5. java 十六进制转十进制_JAVA知识-分析JAVA中的重点和难点
  6. android opencv 银行卡识别,NDK 开发之使用 OpenCV 实现银行卡号识别
  7. A*算法(三)算法实现
  8. 清北学堂模拟赛day7 错排问题
  9. 【CF-Round-458:D】Bash and a Tough Math Puzzle(判断是否可以通过修改区间内的一个数使区间gcd=x)
  10. Win11如何给系统盘瘦身?Win11系统盘瘦身方法
  11. 署五笔软件测试初学者,三天学会五笔打字练习(新手教程)
  12. 小D课堂-nexus
  13. ICCV2021 多目标跟踪(MOT)汇总
  14. 腾讯云:开发者实验室
  15. 短视频搬运神器,二次剪辑神器,涨粉热门必备软件,黑科技----效果杠杠的
  16. 导出word中图片的方法
  17. JAVA经典算法40题(供面试所用)
  18. mysql cpu 占比过高问题解决
  19. AI探索太阳系:从检测月球巨石,到挑战火星“恐怖七分钟”
  20. 密歇根大学最新成果:教会无人车预测行人运动趋势

热门文章

  1. 决定四六级阅读答案的那些词汇
  2. 子类为什么不能直接调用object的clone方法
  3. 050@ 高通845平台抓取3a log
  4. HTTP协议工作原理及详细介绍
  5. 51单片机学习----中断
  6. CSS之实现图片叠加的层叠层问题
  7. 英特尔10nm制程进展:Cannon Lake在路上 Ice Lake完成设计
  8. 基于MSP430单片机风光互补控制路灯设计(设计资料)
  9. 微信小程序:税改计算器,1秒计算税改前后你能多拿多少工资。
  10. 手机怎么设置某一天闹钟提醒