Kong Gateway 修改源码完成自定义错误返回
背景
最近在部署一套基于kong
的网关系统,kong
默认的错误和kong
中插件的提示返回不符合制定的开发统一规范.
通过查阅官方文档以及官方Github issue发现只有修改kong lua 源码才能满足开发需求
Tips:
Response Transformer Plugins
无法满足开发需求
环境
Kong Version:5.1
作者部署方式
- docker-compose
- 通过
volumes
映射已修改的 kong lua dir... volumes: - ./kong:/usr/local/share/lua/5.1/kong/ ...
解决
网关错误提示字段
默认返回的错误提示字段为message
{"message": "some error tips"}
需要将message
修改为error
{"error": "some error tips"}
具体修改
file:/usr/local/share/lua/5.1/kong/tools/utils.lua
line:1105 ~ 1130
路由不存在错误提示
默认返回
{
"message": "no Route matched with those values"
}
修改为
message
在上一步已经修改为error
{
"error": "Route not found"
}
file1: /usr/local/share/lua/5.1/kong/runloop/handler.lua
line: 1096
file2: /usr/local/share/lua/5.1/kong/plugins/acme/api.lua
line: 78
结语
还有一些插件的提示,这里就不展开说了,可根据需求自行调整.
Support Author
本作品采用《CC 协议》,转载必须注明作者和本文链接