当前位置: 首页 > news >正文

【五、接口自动化测试】GET/POST 请求区别

大家好,我是山茶,一个探索AI + 测试的程序员

在网上看到了许多关于post与get之间区别的帖子,也有很多帖子是直接粘贴复制的,甚至连标题、符号都没改,甚至还有很多争议

一、post、get

关于post与get之间区别,老生长谈的内容,在这里我不再赘述,这篇内容仅表达我对post与get之间区别的理解

get与post是HTTP协议接口请求中的两种请求方法,他们的不同主要源头是为了遵守HTTP协议规范。可以百度一下,查看对应的接口类型

GET 方法请求接口

POST 方法请求接口

二、post、get常见区别

HTTP协议是在TCP/IP协议簇中的,且HTTP协议底层的本质是TCP协议原理

所以,用一句话形容,get与post的区别 "是TCP传输的区别,get请求的前三个字节转为字符是get,post前4个字节转为字符是post,其他区别都是传输规范"

从使用角度,最直观的区别

  • 大多数get方法,请求参数直接填写在url中发送。POST方法请求参数使用body request方式发送

从使用安全角度

  • post 方法与 get 方法都不算安全,都是明文发送请求。但,相较而言 get 更容易被 hacker 获取数据内容

从发送数据长度角度

  • 方法请求本身是没有请求长度限制的,但请求url及不同的浏览器对于请求长度的限制都是不同的

  • get 请求最多能够发送 2k 长度的字符串,且因为参数跟在 url 后面,作为 url 的一部分仅支持字符串类型

  • post 请求则发送数据长度不限制,且类型也不做限制

从数据缓存角度、刷新与回退动作

  • 请求本身是不存在缓存数据的,但浏览器是可存储缓存数据的。

不同方法使用场景不同,所以,应用在编写时会被设计缓存的机制,get 方法请求就是如此,浏览器会自动存储 get 数据以供下次查询使用,然而 post类型数据因场景不同,数据通常不被缓存

因此,在浏览器刷新和回退时,get 方法仅是获取浏览器缓存数据即可,而 post 则是需要像服务端重新发送请求

上面的几点是我对于post、get区别的理解,还有几个区别像可见性这种,没有必要再讲一遍,毕竟这个可太明显能够看到不是

作者简介:

程序员山茶,一个工作5年,并坚持探索测试之路的测试开发工程师。曾混迹于互联网大厂、IOTA行业领航企业、安全行业、大数据行业领航企业,欢迎和我一起沟通交流。


欢迎关注我,  和我一起探索AI+测试之路,终身成长

http://www.lryc.cn/news/317520.html

相关文章:

  • HDOJ 2036
  • 2.案例、鼠标时间类型、事件对象参数
  • OPENCV(0-1之0.0)
  • easyrecovery破解版百度云(含Mac/Win版)以及EasyRecovery可以恢复哪些设备
  • [2023年]-hadoop面试真题(一)
  • Kubernetes kafka系列 | k8s部署kafka+zookeepe集群
  • ip广播智慧工地广播喊话号角 IP网络号角在塔吊中应用 通过寻呼话筒预案广播
  • B端系统优化,可不是换个颜色和图标,看看与大厂系统的差距。
  • 【LeetCode热题100】240. 搜索二维矩阵 II
  • three.js 鼠标左右拖动改变玩家视角
  • Pycharm jupyter server process exited with code 1
  • ubuntu 20.04 Python pip 配置 pip.conf
  • GPT-4.5 Turbo意外曝光,最快明天发布?OpenAI终于要放大招了!
  • Ubuntu 中 desktop-amd64 和 live-server-amd64 的区别
  • 第10集《天台教观纲宗》
  • 每日学习笔记:C++ STL 的forward_list
  • 【Java,Redis】Redis 数据库存取字符串数据以及类数据
  • OpenCV 图像重映射函数remap()实例详解
  • Python基础课堂最后一课23——正则对象
  • 【算法训练营】凸包,图(Python实现)
  • webpack5零基础入门-6webpack处理图片资源
  • 计算机基础知识QA
  • 微信小程序一次性订阅requestSubscribeMessage授权和操作详解
  • ARM 汇编指令:(三)运算处理指令
  • 【C++庖丁解牛】STL简介 | string容器初次见面
  • 记OnlyOffice的两个大坑
  • 分享几个Google Chrome谷歌浏览器历史版本下载网站
  • 备考2025年AMC8竞赛:吃透2000-2024年600道真题(免费赠送真题)
  • 考研复试C语言篇
  • Docker架构深度解析:守护进程、客户端与存储驱动的协同作战(下)