Variables 如何设置邮递员';通过变量将头中的授权属性设置为Null/None?

Variables 如何设置邮递员';通过变量将头中的授权属性设置为Null/None?,variables,authorization,postman,basic-authentication,request-headers,Variables,Authorization,Postman,Basic Authentication,Request Headers,在Postman中,我想通过它的环境特性切换到不同的API端点。我的第一个API使用基本身份验证,第二个API不使用任何身份验证 我在所有请求中设置了以变量{{auth}}作为值的授权头。在环境中{auth}}设置为 基本xxx(适用于API 1) null(适用于API 2) 我的请求适用于API 1,但不适用于API 2。显然,邮递员在后一种情况下也试图授权,并给了我401(未经授权)回复。因此,每当我想要向API 2发出请求时,我都需要手动停用授权标头 在Robot框架中(在引擎盖下使

在Postman中,我想通过它的环境特性切换到不同的API端点。我的第一个API使用基本身份验证,第二个API不使用任何身份验证

我在所有请求中设置了以变量{{auth}}作为值的授权头。在环境中{auth}}设置为

  • 基本xxx(适用于API 1)
  • null(适用于API 2)
我的请求适用于API 1,但不适用于API 2。显然,邮递员在后一种情况下也试图授权,并给了我401(未经授权)回复。因此,每当我想要向API 2发出请求时,我都需要手动停用授权标头

在Robot框架中(在引擎盖下使用Python的请求模块),我可以通过
{“授权”:“基本xxx
}到API 1和
{“Authorization”:null}
到API 2,它工作得非常好

邮递员能做到这一点吗?如果可以,怎么做

编辑/更新: 我的解决方案(感谢@shaochuancs) 为环境中的每个API集定义两个环境,并定义一个预请求脚本 用于包含所有请求的文件夹

API 1(基本认证):

API 2(无认证):

请求前脚本:

每个请求中的标题:

现在,我可以轻松地在两种环境之间切换:

网站注: 理想情况下,我会在每个环境中将
AuthKyeValue
设置为ENV,因此不需要任何请求前脚本,但当我这样做时,Postman会将此ENV计算为空字符串。不确定原因。

“我的第一个API使用基本Auth,我的第二个API不使用任何Auth。”

在这种情况下,您可以使用变量作为HTTP头键,对于第一个API,将其设置为“授权”,对于第二个API,将其设置为“未定义”——当它是“未定义”,服务器将不会接收该HTTP头

预请求脚本如下所示:

// For first API
pm.globals.set('AuthorizationKey', 'Authorization');
// For second API
pm.globals.set('AuthorizationKey', undefined);

pm.globals.set('AuthorizationValue', 'Basic xxxxxx');

您的意思是用两个不同的值设置授权吗?您可以使用预请求脚本本身修改头。-@Dev kind-两个不同的值会很容易。在我的情况下,一个API使用auth,另一个不使用auth。有关详细信息,请参阅我的相关更新。
未定义
是我要查找的字符串。谢谢你!我可以解决它有点不同,但只有在你的帮助下:)。我更新了我的问题与我的解决方案的细节。