Apifox如何用脚本调用其他语言( java、python、php 等)
前置脚本和后就女蒿鸳置脚本,可以直接调用以下语言编写的外部程序
注意
仅版本号>= 1.0.25的 Apifox 版本支持脚本调用外部程序。
外部程序是在沙盒环境以外运行的,有权限访问和操作电脑上的其他程序、文件及数据,存在一定的安全性风险,使用者请务必自己确保被调用程序的安全性。
使用方法
1、将需要调用的外部程序( .jar 、.py、.php等文件 )复制到外部程序目录下。点击软件左下角 ⚙ 形状的 icon ,选择外部程序,即可查看外部程序目录。
2、脚本中使用方法pm.execute(fileName, args)调用外部程序。
参数 fileName:String,外部程序文件名,需存放在外部程序目录下。
参数 args:Array,传给外部程序的运行参数,为字符串数组类型,可以传递多个参数。
返回值:String,命令行运行程序时,在控制台输出的字符串。
发生错误时会抛出异常,建议使用try catch处理异常。
3、确保电脑已经安装相应程序运行需要的环境。
.jar程序:需要 安装 java 环境。
.py程序:需要安装 python 环境。
.js程序:需要安装 nodejs 环境。
其他语言程序:需要安装对应语言的环境。
调用原理
调用外部程序是以命令行的方式运行程序,返回值为程序在控制台输出的字符串。
系统会自动根据外部程序的后缀名,调用对应的命令行来运行外部程序。
- .jar程序:通过java命令运行。
如:脚本pm.execute('cn.apifox.Base64EncodeDemo.jar', ['abc','bcd']),实际执行命令为java -jar cn.apifox.Base64EncodeDemo.jar abc bcd。
.py程序:通过python命令运行。
如:脚本pm.execute('md5-json.py', ['abc','bcd']),实际执行命令为python md5-json.py abc bcd。
.js程序:通过node命令运行。
如:脚本pm.execute('xxx.js', ['abc','bcd']),实际执行命令为node xxx.js abc bcd。
其他语言程序也是类似原理。
代码示例
后置脚本:

运行结果:
