上次面试被问到,今天重新整理了一下。

1.POST 和GET本质都是一样一样的。
2.POST和GET都是HTTP请求的基本方法。
3.区别主要有以下几个:
3-1 GET请求在浏览器刷新或者回退的时候是无害的。POST的话数据会被重新提交。
3-2 GET可以被书签收藏,POST不行
3-3 GET可以存在缓存中。POST不行
3-4 GET 会将数据存在浏览器的历史中,POST不会
3-5 GET 编码格式只能用ASCII码,POST没有限制
3-6 GET 数据类型urlencode,POST是URLENCODE,form-data
3-7 可见性 参数在URL用户可以看见,POST的参数在REQUSET BODY中不会被用户看见
3-8 安全性 GET相对不安全 POST相对安全些
3-9 长度 参数一般限制2048(和WEB服务器相关),参数无限制。
4.GET 和POST在请求的时候
4-1 GET 是将数据中的hearder 和 data 一起发送给服务端,返回200code
4-2 POST 是先将hearder发给服务器返回100continue,再发送data给到服务器,返回200
4-3 GET 就发送了一个TCP数据包给服务器而POST发送了两次TCP数据包给服务器
4-4 GET和POST是已经有定义好的说明的,最好不要混用。
5. GET和POST本质上是一样一样的,GET可以加Request Body ,POST也可以在URL中添加参数。实现是可以的。

整理完了,大概就这些。

POST 和 GET的 区别相关推荐

  1. RPC 笔记(01)— RPC概念、调用流程、RPC 与 Restful API 区别

    1. 基本概念 PRC 远程过程调用 Remote Procedure Call,其就是一个节点请求另外一个节点提供的服务.当两个物理分离的子系统需要建立逻辑上的关联时,RPC 是牵线搭桥的常见技术手 ...

  2. C++ 笔记(28)— C++ 中 NULL和 nullptr 的区别

    最近看公司代码的时候发现在判断指针是否为空的时候,有的时候用的是 NULL, 有的时候用的是 nullptr 感觉很奇怪,好奇心驱使我查了下两者的区别,发现还是有很多细节需要学习的. 1. NULL ...

  3. gcc 和 g++ 的联系和区别,使用 gcc 编译 c++

    GCC 编译器已经为我们提供了调用它的接口,对于 C 语言或者 C++ 程序,可以通过执行 gcc 或者 g++ 指令来调用 GCC 编译器. 实际使用中我们更习惯使用 gcc 指令编译 C 语言程序 ...

  4. Python2 与 Python3 区别

    Python2.x 与 Python3.x 区别 1. print 函数 Python2 中 print 是语句(statement),Python3 中 print 则变成了函数.在 Python3 ...

  5. Docker 入门系列(1)- 初识容器,镜像、容器、仓库的区别

    Docker 简介 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发 ...

  6. HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)

    TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...

  7. python二进制打开(rb)和文本格式打开(r)什么区别?

    使用 open() 函数以文本格式打开文件和以二进制格式打开文件,唯一的区别是对文件中换行符的处理不同. 在 Windows 系统中,文件中用 "\r\n" 作为行末标识符(即换行 ...

  8. python中__dict__与dir()区别

    前言 Python下一切皆对象,每个对象都有多个属性(attribute),Python对属性有一套统一的管理方案. __dict__与dir()的区别: dir()是一个函数,返回的是list: _ ...

  9. java和C#面向对象的区别

    问题:C#中的构造函数和java的构造函数一样吗? 答: .net的项目中,写实体Entity属性时,经常会为每一个属性写一对get和set方法,在用到这个实体或是一个类时,通过new实例化一个对象, ...

  10. 判别模型和生成模型的区别

    20210703 https://www.zhihu.com/question/20446337 机器学习"判定模型"和"生成模型"有什么区别? 重点 http ...

最新文章

  1. 祖传人像玩家,如何把AI秀出新高度
  2. 介绍sendmail中mail relay的规则
  3. 台大李宏毅教授的神经网络教程
  4. boost::iterator::permutation_iterator用法的测试程序
  5. Tesseract图形识别软件的安装
  6. .net数据源控件绑定mysql_数据源控件与数据绑定控件的进一步简单讨论(1)
  7. 【事件流】浅谈事件冒泡事件捕获------【巷子】
  8. 每日一笑 | 一些关于学编程的领悟
  9. 筛选末位数字为1或5_看看广州示范性高中排行榜,怎么填报志愿?如何运用末位考生分数...
  10. QPushButton 与 QListWidget 的按键响应
  11. Win7 局域网内简单共享的设置
  12. groovy常用语法及实战
  13. pdf文字无法复制怎么办?unlock解密pdf
  14. 斗鱼tv鸿蒙电视版,斗鱼直播鸿蒙版
  15. python中scipy库的导入与函数调用方法_python的scipy库安装成功,导入scipy或其函数时却报错的问题...
  16. poj1008(Maya Calendar)玛雅历(c++实现)
  17. GO 打开WINDOWS的默认浏览器
  18. 《异常点检测》 - 第十章阅读记录 - 离散序列的异常点检测
  19. APP用户界面设计六基本原则
  20. 进行小红书营销,怎样拉入更多的客户?

热门文章

  1. xampp中mysql使用教程_XAMPP的安装及使用教程
  2. 数学建模——数据包络分析步骤及程序详解
  3. MATLAB —— 散点图绘制
  4. java的jdk和jre有什么区别
  5. 外国驻广州领事馆一览表
  6. 电阻值识别法(色环法、数码法)
  7. Centos7安装maven
  8. 2021上半年软考中级软件设计师考试心得(10天时间你可以拿捏的)
  9. 空洞卷积详解(输入输出大小分析)
  10. 小米笔记本 Air 13.3 黑苹果教程