return function()
-- 请求路由为: /test/route-1/
local original_uri = kong.request.get_path()
local result = {}
local from = 1
local delim_from, delim_to = string.find(original_uri, "/", from)
while delim_from do
table.insert(result, string.sub(original_uri, from, delim_from - 1))
from = delim_to + 1
delim_from, delim_to = string.find(original_uri, "/", from)
table.insert(result, string.sub(original_uri, from))
local parts = result
-- 下列语句的日志输出在/usr/local/kong/logs/的日志文件中可以看到
ngx.log(ngx.ERR, "parts[3] is : ", parts[3])
if parts[3] == "sdk-jd" then
kong.service.request.add_header("test-header", "test-headervalue")
local new_uri = original_uri:gsub("^/test/route%-1/", "/")
kong.service.request.set_path(new_uri)
kong.service.request.set_path("/path-unknown")
遍历数组中的元素
-- 遍历数组中的元素
local fruits = {"Apple", "Banana", "Cherry"}
for i = 1, #fruits do
print(fruits[i])
for循环
-- 使用for i模式
-- 起始,次数,步长
for i =0, 10, 1 do
print(i)
nil判断
local myVar = nil
if not myVar then
print("myVar is nil or false")
print("myVar has a value")