御坂主机 发表于 2024-7-2 12:53:28

两种方法教你在postman设置请求里带动态token

本帖最后由 御坂主机 于 2024-7-3 18:30 编辑

1. 简介

在使用Postman进行API测试时,经常需要在请求中携带动态Token以实现身份验证。动态Token通常由身份验证服务生成,并在每次请求时刷新。本文将介绍两种在Postman中设置请求携带动态Token的方法,帮助您高效进行API测试。

1.1 什么是动态Token

动态Token是一种短期有效的安全凭证,用于确保每次API请求的合法性。常见的动态Token包括JWT(JSON Web Token)和OAuth2.0 Token。这些Token通常在用户登录或认证时生成,并需在每次请求时附加在请求头中。

2. 方法一:使用Pre-request Script

Pre-request Script是Postman中的一个功能,允许在每次发送请求之前执行自定义的JavaScript代码。我们可以利用这一功能,在每次发送请求前获取并设置动态Token。

2.1 获取Token的API请求

假设我们的认证服务提供了一个获取Token的API端点:

POST https://api.example.com/auth/login

请求体:
{
    "username": "your_username",
    "password": "your_password"
}

2.2 在Pre-request Script中获取并设置Token

在目标请求的Pre-request Script中添加以下代码:

const getTokenRequest = {
    url: 'https://api.example.com/auth/login',
    method: 'POST',
    header: {
      'Content-Type': 'application/json'
    },
    body: {
      mode: 'raw',
      raw: JSON.stringify({
            username: 'your_username',
            password: 'your_password'
      })
    }
};

pm.sendRequest(getTokenRequest, (err, res) => {
    if (err) {
      console.log('Error fetching token:', err);
    } else {
      const token = res.json().token;
      pm.environment.set('authToken', token);
    }
});

这段代码首先构建了一个获取Token的请求,然后通过pm.sendRequest发送请求,并将返回的Token存储在Postman环境变量authToken中。

2.3 在请求头中使用Token

在目标请求的Headers中添加以下项:

Key: Authorization
Value: Bearer {{authToken}}

这样,每次发送请求时,Postman会自动在请求头中附加最新的动态Token。

3. 方法二:使用环境变量和辅助请求

另一种方法是通过创建一个专门用于获取Token的辅助请求,然后将其存储在环境变量中,供其他请求使用。

3.1 创建辅助请求

创建一个新的请求用于获取Token:

请求类型:POST
URL: https://api.example.com/auth/login

请求体:
{
    "username": "your_username",
    "password": "your_password"
}

3.2 设置Tests脚本

在辅助请求的Tests脚本中添加以下代码:

const token = pm.response.json().token;
pm.environment.set('authToken', token);

这段代码在获取Token后,将其存储在Postman环境变量authToken中。

3.3 在目标请求中使用Token

在目标请求的Headers中添加以下项:

Key: Authorization
Value: Bearer {{authToken}}

3.4 使用集合(Collection)运行

将辅助请求和目标请求添加到同一个集合中,并按照先后顺序排列。在运行集合时,Postman会先执行辅助请求获取Token,然后将Token应用于目标请求。

4. 总结

通过使用Pre-request Script或辅助请求与环境变量结合的方法,可以在Postman中实现请求携带动态Token。这两种方法都能有效地获取并设置Token,确保每次API请求的安全性和合法性。希望本文对您在Postman中进行API测试有所帮助。如果有任何疑问或建议,欢迎交流讨论。







------------------------------------------------------------------------------------------------------------------------------------------
========御 坂 主 机========
>> VPS主机 服务器 前沿资讯 行业发布 技术杂谈 <<
>> 推广/合作/找我玩TG号 : @Misaka_Offical <<
-------------------------------------------------------------------------------------------------------------------------------------------

页: [1]
查看完整版本: 两种方法教你在postman设置请求里带动态token