1. 概述

HTTP无状态接口在使用Bearer Token方式进行接口认证时,每次调用都要求在请求头中传递一个 token 值(例如 JWT),这个 token 一般通过调用登录接口获取。在通过登录页面调用登录接口获取 token 后会由客户端程序对 token 进行暂存,在后续调用业务接口时向接口传递该 token 即可。
Postman中,如果你只调用很少的接口,则可以先调用登录接口获取token,然后在接口的认证方式(Authorization)中选择Bearer Token,填入该token值即可。但是如果你在做测试,需要频繁调用大量接口,则每个接口都需要添加,并且当token过期后需要更新,很不方便。此时,可以借助Postman的变量(variables)功能,将从登录接口获取的token值保存为变量,在调用接口时Postman自动获取该变量值作为token传递给接口。下面介绍这种设置方式。

2. 确定token格式

假设你的登录接口为localhost:8080/login,首先传入登录信息调用该接口,查看返回的token格式:

上面接口返回的token值直接保存在JSON格式响应体的第一级,即responseBody.token

3. 将token设置为Collection变量

Postman变量 可以理解为保存在本地的接口信息,根据使用范围分为多种,常用的有 GlobalCollectionEnvironment

  • Global:适用于所有场景的变量
  • Collection:只在当前Collection有效的变量
  • Environment:不同环境使用不同变量

一般地,一个系统的接口可以创建一个Collection进行管理,那么可以将token设置为Collection变量。如何设置呢?
点击登录接口的Tests窗口,在编辑器中添加如下JavaScript脚本进行设置:

var res = JSON.parse(responseBody);
pm.collectionVariables.set("token", res.token);


这段代码将响应体转换为JSON数据,然后将token值设置为Collection变量collectionVariables,变量名就为token
代码添加后再次调用登录接口,使脚本生效。
然后,在左侧Collection菜单中点击当前Collection名,再点击Variables,可以看到设置的变量信息:

说明变量设置成功。

4. 认证中添加token变量

设置完以后就可以使用该变量。
还是在Collection界面,点击Authorization,选择认证Type为Bearer Token,在底下的Token中填入变量占位格式{{token}},即表示此处的值将引用变量token的值。

5. 在接口设置认证类型

现在该Collection下所有的接口都可以继承Collection的认证token了,只需要在这些接口的Authorization页面选择认证Type为Inherit auth from parent,即继承自父项,也就是Collection,但这一步一般无需特别设置,如果在第4步设置了Collection的认证token,则Postman默认会选继承该token,若不是该选项,则需单独设置。

设置完成后可直接调用接口,新加的接口也无需单独进行设置。
The End.


参考

[1] Postman说明文档:Using variables

Postman设置统一认证token相关推荐

  1. postman设置带token的请求

    一.定义token 1.首先.点击add, 设置全局变量token 2.设置token 3.在登陆接口(返回token值),接收.设置token: pm.test("Status code ...

  2. 【.NET Core项目实战-统一认证平台】第十一章 授权篇-密码授权模式

    上篇文章介绍了基于Ids4客户端授权的原理及如何实现自定义的客户端授权,并配合网关实现了统一的授权异常返回值和权限配置等相关功能,本篇将介绍密码授权模式,从使用场景.源码剖析到具体实现详细讲解密码授权 ...

  3. 【.NET Core项目实战-统一认证平台】第十章 授权篇-客户端授权

    上篇文章介绍了如何使用Dapper持久化IdentityServer4(以下简称ids4)的信息,并实现了sqlserver和mysql两种方式存储,本篇将介绍如何使用ids4进行客户端授权. .ne ...

  4. 【Spring Cloud Alibaba 实战 | 总结篇】Spring Cloud Gateway + Spring Security OAuth2 + JWT 实现微服务统一认证授权和鉴权

    一. 前言 hi,大家好~ 好久没更文了,期间主要致力于项目的功能升级和问题修复中,经过一年时间这里只贴出关键部分代码的打磨,[有来]终于迎来v2.0版本,相较于v1.x版本主要完善了OAuth2认证 ...

  5. Swagger2进阶:集成统一认证和SpringSecurity的登录接口

    Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务. SpringBoot集成Swagger之后,在Controller层添加相应的注解,即可生 ...

  6. 【.NET Core项目实战-统一认证平台】开篇及目录索引

    [.NET Core项目实战-统一认证平台]开篇及目录索引 一.如何添加客户端授权? 在了解如何进行客户端授权时,我们需要了解详细的授权流程,在[.NET Core项目实战-统一认证平台]第八章 授权 ...

  7. 【.NET Core项目实战-统一认证平台】第四章 网关篇-数据库存储配置(2)

    [.NET Core项目实战-统一认证平台]第四章 网关篇-数据库存储配置(2) 原文:[.NET Core项目实战-统一认证平台]第四章 网关篇-数据库存储配置(2) [.NET Core项目实战- ...

  8. 微服务接入oauth2_微服务权限终极解决方案,Spring Cloud Gateway+Oauth2实现统一认证和鉴权!...

    最近发现了一个很好的微服务权限解决方案,可以通过认证服务进行统一认证,然后通过网关来统一校验认证和鉴权.此方案为目前最新方案,仅支持Spring Boot 2.2.0.Spring Cloud Hox ...

  9. 【.NET Core项目实战-统一认证平台】第十四章 授权篇-自定义授权方式

    上篇文章我介绍了如何强制令牌过期的实现,相信大家对IdentityServer4的验证流程有了更深的了解,本篇我将介绍如何使用自定义的授权方式集成老的业务系统验证,然后根据不同的客户端使用不同的认证方 ...

最新文章

  1. pandas使用query函数查询dataframe指定数据列的内容(数值)包含在特定列表中的数据行(select rows which column values contain in list)
  2. 计算机出国读博必读!外国小哥创建最全CS奖学金项目清单
  3. 延迟环境变量扩展(bat)
  4. cpu使用率 htop显示_用top、vmstat、Htop、sar命令在Linux系统中检查CPU使用率/利用率...
  5. 【机器学习】数据挖掘实战:金融贷款分类模型和时间序列分析
  6. VTK:图表之ConstructGraph
  7. Maven搭建简单的SS项目
  8. 通过浪潮AIStation实现细粒度高性能的GPU资源共享
  9. Linux系统调用--getrlimit/setrlimit函数详解
  10. html给box加超链接,java – 如何使用pdfbox在pdf中添加超链接
  11. 摊牌了!2021年3D视觉算法岗求职群
  12. Carhart四因子模型实用攻略
  13. 如何设置通过PMU的gpio来唤醒系统
  14. 网站设计高性能高并发
  15. SystemVerilog验证教程(二)--SystemVerilog Interface 和 Timing Region
  16. EXCEL转换成十六进制加0x补零
  17. 二级计算机等级证水平高吗,全国计算机水平一级高还是二级高
  18. delete adjacent duplicates from用法(以某个关键字删除相邻重复行的数据)
  19. Loaders 的使用,结合Fragments
  20. win7插了耳机还是外放_安卓手机用耳机听歌音量太大怎么办

热门文章

  1. 解决 ImportError: cannot import name ‘_C‘ from ‘detectron2‘
  2. 看完知乎轮子哥的编程之路,我只想说,收下我的膝盖...
  3. VMware workstation的三种网络模式
  4. Opencv像素值的存储及访问机制
  5. 幻数浅析(Magic Number)
  6. npm搭建React项目
  7. 解决工行登录失败:[96111945]验证码输入错误或已经超时失效,请重新输入
  8. mysql视图存储过程触发器
  9. 关于compose的
  10. 量子计算Shor算法