ApiPost V3 如何设置一个变量?

举报
奔四码农 发表于 2020/05/20 10:08:13 2020/05/20
【摘要】 ApiPost是一个支持团队协作,并可直接生成文档的API调试、管理工具。它支持模拟POST、GET、PUT等常见请求,是后台接口开发者或前端、接口测试人员不可多得的工具 。

ApiPost简介:

ApiPost是一个支持团队协作,并可直接生成文档的API调试、管理工具。它支持模拟POST、GET、PUT等常见请求,是后台接口开发者或前端、接口测试人员不可多得的工具 。

什么是变量?

对于一些常见的参数,我们可以将其定义成变量,以便达到一处改动,全部改动的目的。

例如我们请求的URL域名,完全可以将其设置为变量,在URL栏只输入路由即可。这样的话,我们可以通过控制变量的值,来达到请求不同域名、相同路由的API接口(比如可以用来快速切换开发环境和生产环境)。

如下图所示,我们将域名定义成了变量:url。

image.png

怎么定义变量?

ApiPost V3支持 2 种方式来定义变量:预定义和脚本定义。我们分别来讲。

1、ApiPost预定义变量

image.png

点击右上角的环境管理器,点击【新建环境】,此时在弹窗内就可以定义变量了。

image.png

如图,我们在这里定义了变量:url,并且赋值为:https://console.apipost.cn

此时,当我们点击发送的时候,{{url}}就会自动被替换为https://console.apipost.cn。  

当然除了,url里,请求参数也可以使用变量替代。如下图:

image.png

我新增定义了一个变量{{title}},并放在了body请求参数中,发送后,服务器成功接收到了我定义的变量。

image.png

2、ApiPost脚本定义变量

新版本的ApiPost V3 支持通过JS脚本来定义变量,这样的话,我们的变量丰富性就多了。

还如同刚才的示例,我通过脚本定了一个变量url,效果同刚才的效果是一样的。如下图:

image.png

看到这里,你可能会注意到:这里可以设置全局变量和环境变量。那么什么是全局变量?什么是环境变量?它们有什么区别呢?

环境变量:

环境变量仅在当前已选中环境生效,当您切换了右上角的当前环境后,环境变量则失效。

常见的使用场景如上面举的例子,我们可以定义开发环境和生产环境,从而指定不同的URL来区分接口请求地址的不同。

image.png

全局变量:

全局变量不受当前环境的影响,只要是在同一个项目下,该变量都会生效。

环境变量和全局变量的调用方法都是一样的{{变量名}}

3、ApiPost脚本定义复杂变量

ApiPost 支持自定义函数来定义复杂的变量。如下图:

image.png

image.png

在上面的例子中,我们定一个函数_random,

function _random(){
    return '你好,中国' + Math.random();
}

它返回一个字符串:“你好中国”+随机数,并且通过 

apt.globals.set("random_var", _random());

进行了赋值。发送后,服务器成功接收。

4、ApiPost变量的MD5加密

ApiPost 支持变量的md5加密发送: $.md5(),如下图所示:

image.png

image.png

5、ApiPost变量的base64编码

ApiPost 支持变量的base64编码发送:$.base64.encode() / $.base64.decode(),如下图所示:

image.png

image.png

6、ApiPost脚本定义mock变量

ApiPost 支持mock.js变量(官网:http://mockjs.com/)。如下图:我们定一个一个mock对象,含数字、手机号、邮箱、中文名等。然后通过

apt.variables.set("mock_email", _mock_data.list[0].email);

取第一条数据的email信息。

image.png

服务器成功接收到mock出来的随机邮箱。

image.png

附以上示例完整脚本:

apt.globals.set("url", "https://console.apipost.cn");function _random(){
    return '你好,中国' + Math.random();
}
apt.globals.set("random_var", _random());var _mock_data = Mock.mock({
         'list|4': [{
            'id|+1': 1,
            'number|1-10': 7,
            'email': '@email',
            'phone': /^1[385][1-9]\d{8}/,
            'canme': '@cname()'         }]
     });
     
apt.variables.set("mock_email", _mock_data.list[0].email);

怎么查看当前已定义的变量?

我们可以通过点击右上角的“变量管理器”进行查看当前已定义的变量。

image.png

image.png


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。