18 Star 99 Fork 20

Leon Lambert / ToolsFx

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README-plugin-zh.md 2.88 KB
一键复制 编辑 原始数据 按行查看 历史

ToolsFx 插件指南

English|中文

Leon406:: Visitor's Count ToolsFx:: Visitor's Count

目前同时支持两种机制

原理1 classloader

基于classloader 加载对应接口的实现的jar包, 这里同时用到 convention over configuration思想, jar包名称为对应全类名

应用启动会扫描根目录 plugin文件下的jar包,再通过反射实例化,最后显示

原理2 spi(Service Provider Interface)

插件module resource目录新建 META-INF/services 文件夹, 新建文件名 为插件接口的全类名,内容为接口实现的全类名

宿主应用通过 ServiceLoader#load 实例化所有插件接口的实现的对象,最后显示

对比

机制 加载时机 命名
classloader 按需加载 严格以全类名.jar命名,可以放在指定插件目录
spi 必须同主app一起加载 .jar结尾即可, lib目录或者指定默认加载

classloader目前遇到插件resource资源无法加载的问题,临时只能将plugin的资源放到了宿主

开发相关

参考 plugin-sample 或者 plugin-apipost

插件

ApiPost

支持方法

sym

数据与请求头

sym

文件上传

sym

内置变量及函数

使用{{}} 包裹, 同其他api测试工具

变量
  • uuid 40位uuid

    {{uuid}}
  • uuid2 32位uuid,删除-

    {{uuid2}}
  • timestamp 时间戳(毫秒)

    {{timestamp}}
  • timestamp2 时间戳 (秒)

    {{timestamp2}}
函数

目前只支持一个单级别,可以嵌套

  • md5

    {{md5(ad123124)}}
  • base64

    {{base64(ad123124)}}
  • digest

    {{digest(SHA1,412312)}}
  • binary

    {{binary(ad123124)}}
  • uppercase

    {{uppercase({{digest(SHA1,123)}})}}
  • lowercase

    {{lowercase(asdfAfsdf)}}
  • datetime2Mills

    {{datetime2Mills(2022-01-01 10:00:00)}}
  • date2Mills

    {{date2Mills(2022-01-01)}}

Location (经纬度转换)

location

Compression (压缩)

图片模块

  • png 宽高修复
  • 二进制01转图片
  • 二进制01转二维码
  • rgb色值 转图片
  • base64转图片
  • 图片转base64
  • gif 拆分

插件下载 https://leon.lanzoub.com/b0d9w4cof 提取码:ax63

Kotlin
1
https://gitee.com/LeonShih/ToolsFx.git
git@gitee.com:LeonShih/ToolsFx.git
LeonShih
ToolsFx
ToolsFx
dev

搜索帮助