【问题标题】:Auth options in environment环境中的身份验证选项
【发布时间】:2014-10-23 08:56:33
【问题描述】:

我有不同的 api 环境(不同的服务器、开发、登台、实时)。我可以使用花括号占位符来表示用户名,但我仍然需要在每个存储的请求上替换 auth 标头。

是否可以运行一个发布环境脚本来自动更新标题或做一些需要做的事情?

评论: 我可以使用环境中生成的标头值,类似于Basic blabla,然后在请求中引用它。还在想是否有可能更优雅的方式

【问题讨论】:

    标签: postman


    【解决方案1】:

    您好,我想我的授权标头设置类似。

    在邮递员中有一个“管理预设”按钮,它允许您设置可用于不同请求的默认标头值。我通过以下方式创建了一个参数化标头:

    Key:授权,Value = Bearer {{Access_token}}

    在顶部中心有一个部分,您可以在其中管理环境中的变量。对于每个环境,我都创建了以下变量来保存访问令牌:

    Key:Access_token,Value =

    注意该值留空,因为它将在下一步生成授权响应后设置。

    然后我使用测试编辑器,因为它在生成响应之后运行,而不是之前运行的预请求脚本编辑器。在测试编辑器中,我使用以下脚本获取身份验证令牌的值:

    var data = JSON.parse(responseBody);
    postman.setEnvironmentVariable("Access_token", data.Access_token);
    

    请注意,我正在为每个环境(不是全局)设置此变量,以便我可以为每个环境(开发、QA、暂存、生产等)拥有单独的令牌。

    所以现在我捕获的令牌可以作为每个后续请求的标头发送,方法是单击“添加预设”按钮并选择我之前定义的授权预设标头。

    所以根据我的需要,流程如下

    1. 请求获取访问代码
    2. 根据访问代码的响应,请求获取令牌
    3. 令牌保存为环境变量。
    4. 在每次后续调用中,授权标头都会自动作为预设标头传递。

    【讨论】:

    • 我有 200 多个子请求。有没有办法设置像“总是使用标题预设”?
    • @KonradGałęzowski 我没有亲自探索过这种能力,也不知道有什么通用的方法来实现它。我知道预请求脚本(在请求之前运行)和测试(在请求之后运行)编辑器都允许您运行 javascript 代码。但无论是手动设置标头还是通过 javascript 进行设置,您仍然需要更新每个请求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-06
    • 2018-03-24
    • 2021-11-22
    • 2013-02-08
    • 1970-01-01
    相关资源
    最近更新 更多