在测试脚本中添加多个请求标头(Postman)

问题描述 投票:0回答:4

我正在运行一个包含多个请求的 for 循环,以便从我们的 API 中提取信息。唯一的问题是,我收到控制台错误,指出需要令牌和客户端标头才能查看响应。尽管在测试脚本中,我只能在邮递员中添加一个标头。有什么我没看到的吗?

for (k = 0; k < id.length; k++) {
    const emailRequest = {
        url: "" + id[k] + "/products",
        method: "GET",
        header: [{
            'key': "X-Auth-Token",
            "value": "",
        }
        ],  
        body:{
                mode: 'application/json',
                raw: JSON.stringify({
                    client_id: '',
                })
            }
    };
}
javascript api postman
4个回答
3
投票

标头不是数组。它作为一个对象传递,每个标头都有一个名称/值对。 标题应如下所示

 header: {
        'X-AUTH-TOKEN': 'mytoken',
        'Content-Type': 'application/json'
    }

1
投票

我有一些东西可以帮助你: 我的要求:

   key          value
"X-Auth-Token"  "38432904832904"
"Content-Type"  "application/json"

解决方案:在Pre-request脚本中添加此脚本

pm.request.headers.add({
    key:"X-Auth-Token",
    value:"38432904832904"
});
pm.request.headers.add({
    key:"Content-Type",
    value
}) 

0
投票

为什么不使用多个标头和变量来实现此目的 - 然后您可以根据需要使用脚本操作变量。

图片

有用的链接: https://learning.getpostman.com/docs/postman/environments_and_globals/variables/


0
投票

我刚刚创建了一个标头和/或查询参数数组,并添加了几个辅助函数,如下所示:

const headers = [
    {
        key: 'Accept',
        value: 'application/json'
    },
    {
        key: 'X-Application',
        value: 'app_name'
    },
    {
        key: 'Cookie',
        value: 'session_id_1=123456'
    },
    {
        key: 'Cookie',
        value: 'session_id_2=456789'
    }
];

headers.forEach((header) => pm.request.headers.add(header));

const params = [
    {
        key: 'auth_token',
        value: 'abc123'
    }
];

params.forEach((param) => pm.request.addQueryParams(param));
© www.soinside.com 2019 - 2024. All rights reserved.