postman利用pre-request script自动设置token

场景:

我们请求接口:/api/rest/user/list获取用户列表,但是该接口需要在header中带上Authorization表示的鉴权Token才行。

而登录接口/api/rest/login,则可以返回改Token

常规方案

我们先调登录接口/api/rest/login获取到Token,再在请求用户列表时,手动拷贝Token放到header中,再发送请求。

自动化方案

我们直接写一段脚本,自动获取Token并设置到header中

java 复制代码
pm.sendRequest({
    url: "127.0.0.1:8080/api/rest/login",
    method: 'POST',
    header: {
        'Accept': 'application/json',
        'Content-Type': 'application/json',
    },
    body: {
        mode: 'raw',
        raw: '{"username":"admin","password":"123456"}'
    }
}, function (err, res) {
    // 提取 Response Body 中的 token 值, 并添加到 Headers 中
    pm.request.headers.add({ key: 'Authorization', value: res.json().accessToken })
});

另外如果是想利用用户名、密码的变量,还可以写成:

java 复制代码
pm.sendRequest({
    url: "https://{your url to get token}",
    method: 'POST',
    header: {
        'Accept': 'application/json',
        'Content-Type': 'application/json',
    },
    body: {
        mode: 'raw',
        raw: JSON.stringify({ username: "username", password: "password" })
    }
}, function (err, res) {
    // 提取 Response Body 中的 token 值, 并添加到 Headers 中
    pm.request.headers.add({ key: 'Token', value: res.json().accessToken })
});
相关推荐
是小恐龙啊7 小时前
【测试报告】云枢馈赠系统(Java+Selenium+Jmeter自动化测试)
selenium·测试工具·jmeter
测试199810 小时前
cmake应用:集成gtest进行单元测试
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
软件测试-阿涛1 天前
【性能测试】Jmeter+Grafana+InfluxDB+Prometheus Windows安装部署教程
测试工具·jmeter·性能优化·压力测试·grafana·prometheus
惜.己2 天前
pytest中使用skip跳过某个函数
开发语言·python·测试工具·pytest
绿色果酱2 天前
Apipost:离线可用+AI全栈覆盖,国产API开发协作工具新标杆
postman·ai功能·apipost·apipost离线·apipost ai·ai能力·apipost操作
慧都小项2 天前
自动化UI测试工具TestComplete的AI双引擎:即时数据集 + 自愈测试
自动化测试·测试工具·llm·数据驱动测试·hipaa标准
alien爱吃蛋挞2 天前
Postman
测试工具·postman
程序员小远3 天前
Pytest+Selenium UI自动化测试实战实例
自动化测试·软件测试·python·selenium·测试工具·ui·pytest