在使用 postman 进行后端接口测试的过程中,我常常会遇到除了登录接口外其他接口都需要 token 来验证的情况,遇到这种状况时,我经常会先转到登录接口,获取返回的 token,然后再把这个 token 复制粘帖到需要的地方,这种方式虽然可行,但是每次都要手动来进行操作,着实有点麻烦。

所以我就想 postman 有没有什么机制可以把这个 token 分享出来,然后我直接在 token 的位置使用环境变量来调用就可以了呢?

postman 做了这么久的接口测试,果然这个问题他们早就考虑到了,postman 本身是支持环境变量的,下面就看一下怎么使用吧。

  1. 点击右上角的小齿轮,添加一个新的环境。
  2. 在这个环境里创建一个新的变量 token(你可以根据自己的习惯,起一个好记忆的)。
  3. 在首页选择刚才创建好的环境。
  4. 添加登录接口请求。
  5. 打开 Tests 标签,在里面填写 pm.environment.set("token", JSON.parse(responseBody).access_token);,你需要根据自己后端接口的返回来修改 JSON.parse(responseBody).access_token 字段,如果你的登录接口返回的也是一个 json 格式的数据,那你只需要根据返回 json 中 token 对应的名字将 accsess_token 修改一下就可以了。
    打开一个需要使用到 token 的接口,填写好对应的信息,在 Authorization 标签里选择 Bearer Token,在 token 的位置填写 {{token}}
  6. 发起一次登录请求,请求成功之后,返回需要使用到 token 的接口,发起新的请求,这时候应该是可以正常访问的。
  7. 如果 token 过期了,那只需要在登录接口那里重新发起一次登录请求,其他需要使用 token 的接口就会自动调用最新的 token。

建议如果是不同的项目,那可以多创建几个环境,然后使用不同的环境变量。

如果所有的项目的 token 类似,也可以考虑创建全局变量。