首页 > 解决方案 > 更改 PostMan 中的响应

问题描述

我正在使用一个开放的 API。

但我只使用了 API 提供的响应中的一小部分数据。当我测试使用具有不同参数的 API 来查看响应时。

我不想每次发送请求时都看到整个 API 响应,我只想看到我感兴趣的数据。

例如 :

响应有 3 个对象。Status,FeaturesData. 但我只对Data对象感兴趣,我只想Data在发出请求时看到对象

有没有办法可以使用请求的实际响应打印不同的响应?

运行测试以验证数据,并使用 Pre-Request 脚本在请求之前执行某些操作,但我没有发现任何更改响应形式的内容。

标签: postman

解决方案


没有修改 body 的选项,但您可以使用 postman 中惊人的可视化功能:

例如:

设置网址和方法:

    GET :  https://reqres.in/api/users?page=2

在测试脚本中添加以下代码:

template = `<table bgcolor="#FFFFFF">
        <tr>
            <th>Name</th>
            <th>Email</th>
        </tr>

        {{#each response}}
            <tr>
                <td>{{first_name}}</td>
                <td>{{email}}</td>
            </tr>
        {{/each}}
    </table>
`;

// Set visualizer
pm.visualizer.set(template, {
    // Pass the response body parsed as JSON as `data`
    response: pm.response.json().data
});

现在单击可视化:

在此处输入图像描述

您可以看到可视化仅将 first_name 和 email 显示为表格。

您可以在您的情况下使用相同的逻辑

如果要将其打印为 json 本身,请在测试脚本中使用以下代码:

template = `
<pre><code>{{response}}</code></pre>
`;

console.log( JSON.stringify(pm.response.json().data, undefined, 2))
// Set visualizer
pm.visualizer.set(template, {
    // Pass the response body parsed as JSON as `data`
    response: JSON.stringify(pm.response.json().data, undefined, 2)
});

输出:

在此处输入图像描述


推荐阅读