关于GETPOST的区别, 一个老生常谈的问题, 也是一个属实重要的问题, 趁着下课来总结一波.

更新


[2019-4-25]

Added

  • Initial release

一、异同


1.1 语义区别

  • GET一般用来获取数据, 理应不产生副作用
  • POST一般用于提交数据, 会产生副作用

1.2 大小限制

  • 不同浏览器对于GET携带参数大小有限制, 一般为2K
  • POST并没有明确的限制, 和服务器的处理能力有关

1.3 安全性

PS: 没有绝对的安全, 只取决于懂不懂行的人.

  • GET携带的参数会被拼接到URL
  • POST携带的参数会放置到Request Body

1.4 缓存机制

  • 浏览器缓存机制一定要使用GET请求
  • POST不能缓存

1.5 请求数

  • GET一次发送单个请求
  • POST先发送OPTIONS请求, 有两种用途
    • 检测服务器是否支持该请求方法
    • 检测是否跨域