我是靠谱客的博主 彩色大神,最近开发中收集的这篇文章主要介绍GET 请求与 POST 请求的区别 以及 有关GET 请求传参长度的误区GET 请求传参长度的误区,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

数据传递

  1. GET参数 通过 url 传递; 而 POST 将数据放在 请求体 (request body) 中;
  2. GET请求url 中传递的参数有长度上的限制, 而 POST 请求 没有 (有关传参长度误区详见下方说明) ;
  3. POST 相对于 GET安全,因为 POST请求 的数据在地址栏上不可见, 而 GET请求 参数直接暴露在 url 中,故不能用来传递敏感信息;

本质区别

GET 是用来从服务器上 获得 数据, 而 POST 是用来向服务器上 传递 数据;

缓存区别

  • GET 请求类似于查找的过程, 用户获取数据,可以 不用每次都与数据库连接, 所以 可以使用缓存;
  • POST 一般用于进行 修改和删除 , 必须 与数据库交互,所以 不能 使用缓存;

使用场景

GET 请求:

  1. 请求是为了查找资源;
  2. 请求结果 无持续性 的副作用;
  3. 收集的数据及html 表单内的输入字段名称的总长不超过1024 个字符;

POST 请求:

  1. 请求的结果有 持续性 的作用;
  2. 若使用 GET 方法,则表单上收集的数据可能让 URL 过长;
  3. 要传送的数据不是采用ASCII 编码;

GET 请求传参长度的误区

上文提到 GET 请求参数的大小存在限制, 而post 请求的参数大小是无限制的;

这样说并不是完全准确的, 原因如下:

  1. HTTP 协议 从未规定GET/POST 的请求长度限制是多少;
  2. GET 请求参数的限制是来源于 浏览器web 服务器浏览器web 服务器 限制了url 的长度; 不同的浏览器和WEB 服务器,限制的最大长度不一样, 例如:
    • 要支持IE,则最大长度为2083byte;
    • 若只支持Chrome,则最大长度8182byte;

最后

以上就是彩色大神为你收集整理的GET 请求与 POST 请求的区别 以及 有关GET 请求传参长度的误区GET 请求传参长度的误区的全部内容,希望文章能够帮你解决GET 请求与 POST 请求的区别 以及 有关GET 请求传参长度的误区GET 请求传参长度的误区所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部