【问题标题】:Postman Request Scripting: Extracting Values From Response And Setting Global Variable ValuesPostman 请求脚本:从响应中提取值并设置全局变量值
【发布时间】:2022-09-23 03:26:05
【问题描述】:

我正在 Postman 中编写一个预请求脚本,用于设置全局变量 API_TOKEN 的值。

pm.sendRequest({
    url: pm.globals.get(\"GET_API_TOKEN_URL\"),
    method: \"GET\",
    header: {
        clientId: pm.globals.get(\"GET_API_TOKEN_CLIENT_ID\"),
        clientSecret: pm.globals.get(\"GET_API_TOKEN_CLIENT_SECRET\")
    }
}, function (error, response) {
    console.log(response)
    console.log(response.header)
    pm.globals.set(\"API_TOKEN\", response.header[3].apitoken)
})

我的问题是console.log(response.header) 记录undefined,即使console.log(response) 记录一个具有各种字段的对象就好了:

{
    id: ...
    status: ...
    code: ...
    header: [11]
    ...
}

提前致谢!

    标签: javascript scripting postman global-variables response-headers


    【解决方案1】:

    诀窍是访问response.headers.all()[3].value 而不是response.header[3].value

    https://learning.postman.com/docs/writing-scripts/script-references/postman-sandbox-api-reference/

    pm.sendRequest({
        url: pm.globals.get("GET_API_TOKEN_URL"),
        method: "GET",
        header: {
            clientId: pm.globals.get("GET_API_TOKEN_CLIENT_ID"),
            clientSecret: pm.globals.get("GET_API_TOKEN_CLIENT_SECRET")
        }
    }, function (error, response) {
        console.log(error ? error : response)
        if (error) {
            return
        } else {
            pm.globals.set("API_TOKEN", response.headers.all()[3].value)
        }
    })
    

    【讨论】:

      猜你喜欢
      • 2018-09-08
      • 1970-01-01
      • 2019-12-13
      • 1970-01-01
      • 2018-08-17
      • 2023-03-20
      • 2019-08-02
      • 2019-03-06
      • 2016-09-16
      相关资源
      最近更新 更多