postman token传参问题

使用Postman时,经常会遇到接口需要加token,每次手动添加较麻烦。解决方案:

首先在登陆接口访问后,将获取到的token设置为Postman的环境变量(Environment)或全局变量,例如设置环境变量名:token,值为登陆接口访问成功后,在responseBody中的token值。然后访问其他接口时,读取该token值即可:Postman里面获取变量的语法为:{{变量名}}。

假如login接口返回的json格式为

{

    "status": 0,

    "message":"成功",

    "data": {

       "username": "cams_admin_dev",

        "token":"eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE1MTYzNDIxMjAsInN1YiI6ImNhbXNfYWRtaW5fZGV2IiwiY3JlYXRlZCI6MTUxNjI1NTcyMDU0NywiZnVsbCI6ImNhbXNfYWRtaW5fZGV2IiwidWF1dGgiOiIvKio7QUxMIiwiYXV0aCI6InNldHRpbmdzLGNhbXNfYWRtaW4saW5kdXN0cnksYm9uZCxjYW1zSG9tZSxjb21wYW55LGFyZWEsZGV0YWlscyxjYW1zT3BlcmF0aW9uIn0.pI09X8KNoIK0fb6xC1xbrSZyg-EnUnlZ_9shmOQCRDtdIIEA5iyq3HmzgSx0ReaChEAZxkrrSRTtSXE8ZlbCTw"

    }

}

在Postman软件的Tests中写以下代码,设置环境变量

pm.test("Status code is 200", function (){

pm.response.to.have.status(200);

});

var data = JSON.parse(responseBody);  // responseBody转为json字符串

pm.environment.set("token",

data.data.token);  // 设置环境变量token,供后面的接口引用

或者,设置全局token方法:

var jsonData

=JSON.parse(responseBody);//获取body中返回的所有参数

postman.setGlobalVariable("token",jsonData.data.token);//把返回参数中的keys设置为环境变量


postman可以设置多套环境,每套环境里可以有多个环境变量。环境变量是特定的环境下引用的变量,必须要制定对应的环境才能引用到其中的变量。postman只可以设置一组全局变量,作用于整个postman。而全局变量是在postman中所有的api都使用的变量,可以直接引用全局变量中的变量,而不用指定环境。

根据token在其他请求接口中的位置,将接口token值填充进去,格式为 :{{token}}。

如在其他接口的Authorization请求头中设置,填写token值如下。



如果token是在body体中传送,则添加的情况如下

鼠标移动到{{token}}上时,可用显示它的值,这时再访问其他接口,就可以成功了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 推荐一款接口测试工具!POSTMAN!简单来说,四个词,简单实用大方美观! Postman是一款功能强大的网页调试...
    依北辰阅读 706,915评论 63 561
  • 目录结构 一、Postman变量简介1.变量引入2.Postman变量类型二、Postman变量类型1.环境变量(...
    公子小白123阅读 4,913评论 0 3
  • 1.环境变量 很多时候,我们在开发时会有多个部署位置,比如一个用于测试,一个用于生产。通常的流程是先使用测试部署进...
    瘦到55KG好吗阅读 5,010评论 3 9
  • 主要介绍使用postman进行web api接口主流程场景的回归测试及测试过程中数据构造;主要用到的是get/po...
    多夏_zoey阅读 5,242评论 0 3
  • 一、 安装与更新 1、安装的方式 方式1:chrome插件版本:chrome--->设置--->扩展程序; 方式2...
    MR_LiY阅读 10,228评论 3 3