Mercurial > prosody-modules
changeset 4514:81d0748bff5b
mod_rest: Add an 'echo' endpoint for debugging
It returns the XML stanza built from e.g. the JSON format.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 21 Mar 2021 00:31:53 +0100 |
parents | ade2064160e3 |
children | 2e33eeafe962 |
files | mod_rest/mod_rest.lua |
diffstat | 1 files changed, 8 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mod_rest/mod_rest.lua Wed Mar 17 15:52:12 2021 +0100 +++ b/mod_rest/mod_rest.lua Sun Mar 21 00:31:53 2021 +0100 @@ -231,6 +231,8 @@ local request, response = event.request, event.response; local from; local origin; + local echo = path == "echo"; + if echo then path = nil; end if not request.headers.authorization then response.headers.www_authenticate = www_authenticate_header; @@ -285,6 +287,12 @@ module:log("debug", "Received[rest]: %s", payload:top_tag()); local send_type = decide_type((request.headers.accept or "") ..",".. (request.headers.content_type or ""), supported_outputs) + + if echo then + response.headers.content_type = send_type; + return encode(send_type, payload); + end + if payload.name == "iq" then function origin.send(stanza) module:send(stanza);