Script

Script 表示将在 HTTP 请求/响应生命周期期间执行的脚本。

Script 配置可直接绑定在 Route 上。

ScriptPlugin 互斥,且优先执行 Script ,这意味着配置 Script 后,Route 上配置的 Plugin 将不被执行。

理论上,在 Script 中可以写任意 lua 代码,也可以直接调用已有插件以重用已有的代码。

Script 也有执行阶段概念,支持 accessheader_filterbody_filterlog 阶段。系统会在相应阶段中自动执行 Script 脚本中对应阶段的代码。

  1. {
  2. ...
  3. "script": "local _M = {} \n function _M.access(api_ctx) \n ngx.log(ngx.INFO,\"hit access phase\") \n end \nreturn _M"
  4. }