File

mod_pubsub_get/mod_pubsub_get.lua @ 6211:750d64c47ec6 draft default tip

Merge
author Trần H. Trung <xmpp:trần.h.trung@trung.fun>
date Tue, 18 Mar 2025 00:31:36 +0700
parent 6204:119c0eb65bf3
line wrap: on
line source

module:depends("http")
local pubsub_service = module:depends("pubsub").service
local json = require "util.json"

function handle_GET(event)
	local request, response = event.request, event.response
	local query = request.url.query

	if query:sub(1, 5) ~= "node=" then return 400 end

	local node = query:sub(6)
	local ok, items = pubsub_service:get_items(node, true)

	if not ok then return 404 end
	response.status_code = 200
	return json.encode(items)
end

module:provides("http", {route = {GET = handle_GET}})