两种HTTP请求方法:GET 和 POST

在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET和POST.

  • GET - 从指定的资源请求数据。
  • POST - 向指定的资源提交要被处理的数据。

GET方法

查询字符串(名称/值对)是在GET请求的URL中发送的:

  • GET 请求可被缓存
  • GET 请求保留在浏览器历史记录中
  • GET 请求可被收藏为书签
  • GET 请求不应在处理敏感数据时使用
  • GET 请求有长度限制
  • GET 请求只应当用于取回数据

POST 方法

查询1字符串(名词/值对)是在POST请求的HTTP消息主体中发送的:

  • POST 请求不会被缓存
  • POST 请求不会保留在浏览器历史记录中
  • POST 不能被收藏为书签
  • POST 请求对数据长度没有要求

比较GET 和POST

GET POST
后退按钮/刷新 无影响 数据会被重新提交
书签 可收藏为书签 不可收藏为书签
缓存 能被缓存 不能缓存
历史 参数保留在浏览器历史中 参数不会保存在浏览器历史中
对数据长度的限制 当发送数据时,GET方法向URL添加数据;URL的长度是受限制的(URL的最大长度是2048个字符) 无限制
对数据类型的限制 只允许 ASCII 字符 没有限制,也允许二进制数据
安全性 安全性差,数据是URL的一部分 比GET更安全,参数不会被保存在浏览器历史或Web服务器日志中
可见性 数据在URL中对所有人都是可见的 数据不会显示在URL中
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,769评论 19 139
  • 什么是 HTTP? 超文本传输协议(HTTP)的设计目的是保证客户机与服务器之间的通信。HTTP 的工作方式是客户...
    bpup阅读 4,903评论 0 0
  • 两种最常用的 HTTP 方法是:GET 和 POST。 什么是 HTTP? 超文本传输协议(HTTP)的设计目的是...
    josephok阅读 3,813评论 0 1
  • 两种最常用的HTTP方法是:GET和POST。 请问:什么是HTTP? 超文本传输协议(HTTP)的设计目的是保证...
    青葱烈马阅读 4,862评论 0 1
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 12,698评论 6 152