当前位置: 首页 > news >正文

Apisix Lua 插件开发规范及指引

目录
  • 开发指引
  • 开发规范
    • 1、命名规范
    • 2、公共功能放到固定目录文件
    • 3、插件内部 定义 _M 为主体对象
    • 4、如果有传参,需做插件参数校验
    • 5、注意事项
      • 修改插件:
      • 新增插件:

开发指引

参考 https://www.bookstack.cn/read/apisix-3.2-zh/04cfe4a73d787983.md#插件开发

开发规范

1、命名规范

以小写字母、下划线命名

2、公共功能放到固定目录文件

/usr/local/apisix/apisix/plugins/custom_utils/tools.lua

3、插件内部 定义 _M 为主体对象

需要定义版本,优先级,名称,参数(如果需要传参)

local _M = {version = 0.2,priority = 3004,name = plugin_name,schema = schema,
}

4、如果有传参,需做插件参数校验

如:


local schema = {type = "object",properties = {header = {type = "string",default = "apikey",},query = {type = "string",default = "apikey",},},
}function _M.check_schema(conf)return core.schema.check(schema, conf)
end

5、注意事项

修改插件:

修改完毕执行 apisix reload

新增插件:

插件编写完毕后

1)修改 /usr/local/apisix/conf/config.yaml,执行 apisix reload

2)执行

cd /usr/local/apisix/dashboard/conf/
curl 127.0.0.1:9090/v1/schema>schema.json
systemctl restart apisix-dashboard
http://www.hskmm.com/?act=detail&tid=207

相关文章:

  • nim整活-道歉程序
  • 《ai工具合集》14G
  • jmeter-BeanShell PostProcessor
  • Python 函数(Function)核心知识点
  • WPF中的坐标系统
  • 关于Genieacs的配置
  • HyperWorks许可管理软件
  • JMeter通过正则表达式、JSON提取器获取变量
  • ARC176E题解
  • DP 总结(未完成)
  • Code and Data Relocation in Zephyr
  • 产品经理实战指南:用户需求分析全流程详解(含工具链整合)
  • 模板
  • kylin V11安装mysql8.0
  • 【Kubernetes】 PVC 和 PV
  • Docker镜像
  • idea 允许多运行java示例 idea2022版本
  • ROS2环境配置
  • 2025年第五届电子信息工程与计算机科学国际会议(EIECS 2025)
  • P6477 [NOI Online #2 提高组] 子序列问题 题解
  • iframe 跨域通信实战:可视化编辑器的技术实现
  • windows项目下统计代码行数
  • 。。。
  • ETF 简介
  • 实时流式响应的 SSE 技术实现
  • 2025年艺术、教育和管理国际学术会议(ICAEM 2025)- 第五期
  • CF 1048 Div.2 解题报告
  • reLeetCode 热题 100-1 两数之和-扩展1 unordered_map实现 - MKT
  • 读书笔记:什么是对象表?
  • AI 服务路由策略:如何实现智能负载均衡