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

Insomnia 简单使用方法

文章目录

  • 1. 新建工程
  • 2. 新建若干文件夹
  • 3. 设置环境变量
  • 4. 授权以及进行请求的链式调用 (chaining requests)
    • 4. 1 解决办法 1
    • 4. 2 解决办法 2

Insomnia 同 Postman, 用于测试后端 endpoint,很容易使用。
使用步骤如下:

1. 新建工程

2. 新建若干文件夹

目的是对请求进行归类,例如与 store 相关的请求都放到一个叫做 store 的文件夹中,下图所示的工程有4个文件夹:Store, User, Items, Tags

在这里插入图片描述

3. 设置环境变量

例如 url,如果修改了 url 或者端口号,设置并使用环境变量,就不需要每个请求手动修改。比方说,将所有请求中的 http://127.0.0.1:5000 手动改成 http://127.0.0.1:5005,会比较繁琐。
编辑环境变量可以点击 UI 中的 No Environment -> Managements,也可以使用 Ctrl + E 打开,然后设置 url,这里的名称可任意,但后面使用时要与其一致:

在这里插入图片描述

设置之后,请求的路径例如 http://127.0.0.1:5005/store 可以改成 {{url}}/store, {{url}} 会自动变成紫色,如下图所示:

在这里插入图片描述

4. 授权以及进行请求的链式调用 (chaining requests)

授权可以使用 jwt,jwt 在用户 login 之后获得,执行特定的操作需要此 token,例如 POST,DELETE,PUT 等,直观的测试方法是,先发送 login 请求,然后复制响应中的 jwt token,然后将其粘贴到需要授权的请求的 Header 中:Bearer <jwt_token>,如下图所示:

在这里插入图片描述

如果 token 过期,需要重新 login,再次复制 token 并粘贴到这里,粘贴复制的方法繁琐。

4. 1 解决办法 1

Bearer 后按 Ctrl + Space, 出现下拉列表,选择 Response =>Body Attribute (中文输入状态不会出现下拉列表,要切换成英文)

在这里插入图片描述

然后点击红色的文字进行设置。在 Filter(JSONPath or XPath) 一项,单独输入 $ 可看到完整的 login 响应, 其中有一项是 access_token, $.access_token 可获得 jwt,(这里的 access_token 可以是其他名称,根据 login 响应而定。最右端的设置图标不要点,默认就可以)

在这里插入图片描述

Trigger Behavior 可以选择当 jwt 过期后,如果执行此请求,Insomnia 自动发送一条 login 请求,重新获得 jwt token, 那么要多长时间后发送 login 请求呢,例如可以设成 300,即5分钟。
假如说 jwt 的有效时间是极短的 10 秒,而上图中的 Max age 设 60 秒,则 10 秒之后,jwt 失效,因此 10 秒之后的 50 秒内 post 请求全部失败,一直到第 61秒发送 post 请求时,Insomnia 自动发送 login 请求获取新的 token,post 请求 ok,以下是 Docker log:

在这里插入图片描述

设置完成后的界面:

在这里插入图片描述
此方法虽然可以自动获得 jwt token,不再需要从 login 响应中复制 jwt token 再粘贴到其他请求的 Header 里,但是每个需要授权的请求都要这样设置一遍,也不算特别理想。

4. 2 解决办法 2

同样设置环境变量,Ctrl + E,添加一项 access_token, 然后 Ctrl + Space, 同上面的设置步骤,(测试发现唯一有区别的地方是,这里 Max age 无法修改成 60 以外的值,每次重新打开 Edit Tag 界面都发现是 60) ,设置完成后如下图所示:

在这里插入图片描述

之后,Header 中的 Bearer 后直接加 {{access_token}} 就可以,每条需要授权的请求都可以这样加:

在这里插入图片描述

这样就实现了请求的链式调用,之后执行需要授权的操作,不再需要复制粘贴 jwt。

相关文章:

Insomnia 简单使用方法

文章目录 1. 新建工程2. 新建若干文件夹3. 设置环境变量4. 授权以及进行请求的链式调用 (chaining requests)4. 1 解决办法 14. 2 解决办法 2 Insomnia 同 Postman&#xff0c; 用于测试后端 endpoint&#xff0c;很容易使用。 使用步骤如下&#xff1a; 1. 新建工程 2. 新建若…...

2023接口自动化测试,完整入门篇

1. 什么是接口测试 顾名思义&#xff0c;接口测试是对系统或组件之间的接口进行测试&#xff0c;主要是校验数据的交换&#xff0c;传递和控制管理过程&#xff0c;以及相互逻辑依赖关系。其中接口协议分为HTTP,WebService,Dubbo,Thrift,Socket等类型&#xff0c;测试类型又主…...

2023年股票代持行业研究报告

第一章 股票代持概述 1.1 基本概念 股票代持&#xff0c;或称委托持股&#xff0c;是指实际出资人与名义出资人达成以下约定&#xff1a;名义出资人作为名义股东&#xff0c;在股东名册等公司工商登记信息上出现&#xff0c;而实际上由实际出资人出资并享有投资权益。 股票代…...

《Netty》从零开始学netty源码(三十九)之PoolSubPage的内存分配

目录 PoolSubPage.allocategetNextAvail方法toHandle方法removeFromPool方法 PoolSubPage.allocate 上一篇我们介绍了PoolSubPage的简单知识&#xff0c;当我们需要PoolSubPage的内存时可调用allocate方法查找可分配二进制的位置&#xff0c;具体的源码过程如下&#xff1a; …...

【目标检测论文阅读笔记】Reducing Label Noise in Anchor-Free Object Detection

&#xff08;Augmentation for small object detection&#xff09; Abstract 当前的 anchor-free无锚目标检测器 将空间上落在真值框预定义中心区域内的所有特征标记为正。这种方法会在训练过程中产生 标签噪声&#xff0c;因为这些 正标记的特征中的一些 可能位于背景或遮挡…...

金融数字新型基础设施创新开放联合体今日成立

4月18日&#xff0c;“金融数字新型基础设施创新开放联合体”&#xff08;以下简称&#xff1a;联合体&#xff09;在上海成立。联合体由上海银行、复旦大学金融科技研究院、中电金信共同发起&#xff0c;首批成员单位汇聚产业链与供给侧的中坚力量&#xff1a;国泰君安证券、太…...

编程语言的发展史

编程语言处在不断的发展和变化中&#xff0c;从最初的机器语言发展到如今的2500种以上的高级语言&#xff0c;每种语言都有其特定的用途和不同的发展轨迹。编程语言并不像人类自然语言发展变化一样的缓慢而又持久&#xff0c;其发展是相当快速的&#xff0c;这主要是计算机硬件…...

巧用千寻位置GNSS软件|点测量采集技巧

点测量是测量中重要的节点&#xff0c;在测量工作的信息处理分析中发挥着重要作用。本期将给各位带来使用千寻位置GNSS软件采集地形点、控制点、快速点、连续点、房角点和倾斜点的操作技巧。 地形点 地形点的设置如图 5.1-9所 示&#xff0c;每次采集一个点&#xff0c;该点需要…...

DHCP原理与配置

目录 一、DHCP工作原理 1&#xff09;了解DHCP服务 使用DHCP的好处 DHCP的分配方式 2&#xff09;DHCP的租约过程 分为四个步骤 二、DHCP服务器的配置 1&#xff09;检查并且安装dhcp有关软件包 2&#xff09;查看系统的配置文件&#xff0c;并且利用好官方给的参考案…...

软件测试今天你被内卷了吗?

认识一个人&#xff0c;大专学历非计算机专业的&#xff0c;是前几年环境好的时候入的行&#xff0c;那时候软件测试的要求真的很低&#xff0c;他那时好像是报了个班&#xff0c;然后入门的&#xff0c;但学的都是些基础&#xff0c;当时的他想的也简单&#xff0c;反正也能拿…...

做完自动化测试,但别让不会汇报毁了你...

pytest 是一个成熟的全功能Python测试工具&#xff0c;可以帮助您编写更好的程序。它与 python 自带的 unittest 测试框架类似&#xff0c;但 pytest 使用起来更简洁和高效&#xff0c;并且兼容 unittest 框架。pytest 能够支持简单的单元测试和复杂的功能测试&#xff0c;pyte…...

企业级信息系统开发讲课笔记2.4 利用MyBatis实现条件查询

文章目录 零、本节学习目标一、查询需求二、打开MyBatisDemo项目三、对学生表实现条件查询&#xff08;一&#xff09;创建学生映射器配置文件&#xff08;二&#xff09;配置学生映射器文件&#xff08;三&#xff09;创建学生映射器接口&#xff08;四&#xff09;测试学生映…...

【天梯赛—不想坑队友系列】L2-003 月饼(java)

目录 第一题&#xff1a; L2-003 月饼 输入格式&#xff1a; 输出格式&#xff1a; 输入样例&#xff1a; 输出样例&#xff1a; 题目分析 题目代码 第二题&#xff1a;德才论 输入格式&#xff1a; 输出格式&#xff1a; 输入样例&#xff1a; 输出样例&#xff…...

电磁兼容(EMC)的标准与测试内容

在国际范围上&#xff0c;电磁兼容标准的制定已经有了70多年的发展历程&#xff0c;最早为了保护无线电通信和广播&#xff0c;国际无线电干扰特别委员会&#xff08;CISPR&#xff09;对各种用电设备和系统提出了相关的电磁干扰发射限值和测量方法。到了20世纪60&#xff5e;7…...

滑动平均算法

class Solution { public static int[] maxSlidingWindow(int[] nums, int k) { int right 0; int[] res new int[nums.length -k 1]; int index0; LinkedList<Integer> list new LinkedList<>(); // 开始构造窗口 …...

个人职业发展

职业的本质就是人和社会的交换关系。选择什么职业&#xff0c;等于选择了用什么方式和世界交换。 比如&#xff0c;快递员、小时工靠“体力”&#xff1b;大多数打工者靠“体力智力”&#xff1b;网红靠“资源、平台”&#xff1b;各领域的大神、科学家、艺术家靠“天赋”。 这…...

剑指 Offer 51. 数组中的逆序对

剑指 Offer 51. 数组中的逆序对 难度&#xff1a;hard\color{red}{hard}hard 题目描述 在数组中的两个数字&#xff0c;如果前面一个数字大于后面的数字&#xff0c;则这两个数字组成一个逆序对。输入一个数组&#xff0c;求出这个数组中的逆序对的总数。 示例 1: 输入: [7…...

数字化转型迫在眉睫!药企如何应用AI技术加速创新?

导语 | 近年来&#xff0c;随着 AI 等技术的发展应用&#xff0c;数字化、智能化日渐成为各行各业转型升级的新兴力量&#xff0c;其与医药产业的融合创新也逐渐成为当前的新趋势&#xff0c;众多医药制造企业蓄势待发&#xff0c;搭乘数字化的快车&#xff0c;驶入高速发展的快…...

电脑显示屏是怎么显示出图像的?CPU与GPU又是什么关系?

文章目录电脑显示屏是怎么显示出图像的&#xff1f;CPU与GPU又是什么关系&#xff1f;显卡作用明明有了CPU为什么还要GPU?电脑显示屏是怎么显示出图像的&#xff1f;内存与显存所有运算都交给GPU处理可以吗&#xff1f;参考&#xff1a;电脑显示屏是怎么显示出图像的&#xff…...

报名截至在即 | “泰迪杯”挑战赛最后一场赛前指导直播!

为推广我国高校数据挖掘实践教学&#xff0c;培养学生数据挖掘的应用和创新能力&#xff0c;增加校企交流合作和信息共享&#xff0c;提升我国高校的教学质量和企业的竞争能力&#xff0c;第十一届“泰迪杯”数据挖掘挑战赛&#xff08;以下简称挑战赛&#xff09;已于2023年3月…...

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...