Files
2026-07-13 12:32:21 +08:00

49 lines
1.2 KiB
Lua

local kong = kong
return {
["/cache/:key"] = {
GET = function(self)
-- probe the cache to see if a key has been requested before
local ttl, err, value = kong.cache:probe(self.params.key)
if err then
kong.log.err(err)
return kong.response.exit(500, { message = "An unexpected error happened" })
end
if ttl then
return kong.response.exit(200, type(value) == "table" and value or { message = value })
end
ttl, err, value = kong.core_cache:probe(self.params.key)
if err then
kong.log.err(err)
return kong.response.exit(500, { message = "An unexpected error happened" })
end
if ttl then
return kong.response.exit(200, type(value) == "table" and value or { message = value })
end
return kong.response.exit(404, { message = "Not found" })
end,
DELETE = function(self)
kong.cache:invalidate_local(self.params.key)
kong.core_cache:invalidate_local(self.params.key)
return kong.response.exit(204) -- no content
end,
},
["/cache"] = {
DELETE = function()
kong.cache:purge()
kong.core_cache:purge()
return kong.response.exit(204) -- no content
end,
},
}