如何在 POSTMAN 环境中添加授权标头?
Posted
技术标签:
【中文标题】如何在 POSTMAN 环境中添加授权标头?【英文标题】:How to add authorization header in POSTMAN environment? 【发布时间】:2017-03-25 04:33:34 【问题描述】:我正在使用 POSTMAN 测试一堆 API 调用。我可以将其作为 POSTMAN 环境的一部分,而不是向每个请求添加授权标头吗?所以,我不必在每个请求中都传递它。
【问题讨论】:
【参考方案1】:在 Postman 的现代版本中,您只需在集合(或文件夹)上设置您的身份验证,并让每个请求都继承它(我相信默认情况下新请求会这样做)。
【讨论】:
集合创建后如何添加?我找不到编辑集合和添加身份验证的方法。它仅在您第一次创建集合时才出现。 更新了显示如何在 Postman UI 中执行此操作的屏幕截图 这是我需要的。谢谢 另外,如果您想设置自定义 Auth 标头,而不是普通的可选标头:postman.com/postman/workspace/postman-answers/collection/…【参考方案2】:不确定这是否是您要查找的内容,但我们使用基于链接的 API,该 API 在每个请求上都需要 auth 标头。如果您转到Postman > Preferences > General
并启用Retain headers when clicking on links
,Postman 会将您的身份验证标头传递给子链接。
希望有帮助!
【讨论】:
【参考方案3】:如果你等不及了,我刚刚做了一个解决方法:
-
导出您的集合(数据格式 v2.1)
打开 firefox、开发工具、便签本
粘贴下面的代码
将标题信息替换为您的标题
将 var a 替换为导出的 .json 文件的内容
运行脚本
copy(b) 命令会将新数据放入剪贴板中
在 postman 中,单击导入 > 粘贴原始文本 > 导入 > 作为副本。
验证您的请求是否包含您的标头,然后运行它:)
var myHeader =
"key": "X-Client-DN",
"value": "Postman-DN",
"description": "The User's DN Interacting with the system."
;
function addHeader(obj, header)
if (obj.hasOwnProperty('request'))
obj.request.header.push(myHeader)
if (obj.hasOwnProperty('item'))
obj.item.forEach(function(element)
element = addHeader(element, header);
);
return obj;
var a =
"item": [,
"request":
"header": []
,
"item": [
"request":
"header": []
]
]
var b = addHeader(a, myHeader);
console.log(JSON.stringify(b, null, 2))
// Might have to run copy manually on console
//copy(b);
【讨论】:
【参考方案4】:是的,您可以通过 Postman 执行此操作,方法是将您的标头分配为环境变量,例如 authorization
,如下所示:
然后设置你的环境变量,其值如下:
【讨论】:
^ 同意上述评论,我来这里是为了寻找如何为每个请求添加标头,而无需手动编辑每个请求。我目前正在处理的套件中有 58 个请求,还有一个新要求,即每个请求都发送一个以前不存在的 Authorzation 标头。【参考方案5】:邮递员通常会记住您在标头中发送的键值对。因此无需为每个请求添加标头。无论如何,您可以使用您的身份验证令牌配置“预设”。
【讨论】:
是的,但是如果您需要为每个环境设置不同的预设怎么办以上是关于如何在 POSTMAN 环境中添加授权标头?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 React 组件中向 Apollo 客户端添加新的授权标头?
如何在 ASP .Net 核心的 Swagger 中添加基本授权标头
当 axios 在 React 中请求时,Ruby on Rails 的标头中不包含授权令牌,但它可以与 Postman 一起使用