Mercurial > prosody-modules
comparison mod_pubsub_feeds/mod_pubsub_feeds.lua @ 6286:3f75ac4311bf
mod_pubsub_feeds: Set content-type on websub challenge response
Thanks Gabriel
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Mon, 07 Jul 2025 16:22:19 +0200 |
| parents | bc292c84f56c |
| children | f61564e11d3b |
comparison
equal
deleted
inserted
replaced
| 6285:27e061d455b9 | 6286:3f75ac4311bf |
|---|---|
| 226 local feed = feed_list[query.node]; | 226 local feed = feed_list[query.node]; |
| 227 if not feed then | 227 if not feed then |
| 228 if query["hub.mode"] == "unsubscribe" then | 228 if query["hub.mode"] == "unsubscribe" then |
| 229 -- Unsubscribe from unknown feed | 229 -- Unsubscribe from unknown feed |
| 230 module:log("debug", "Unsubscribe from unknown feed %s -- %s", query["hub.topic"], formencode(query)); | 230 module:log("debug", "Unsubscribe from unknown feed %s -- %s", query["hub.topic"], formencode(query)); |
| 231 return query["hub.challenge"]; | 231 return { headers = { content_type = "text/plain" }; body = query["hub.challenge"] }; |
| 232 end | 232 end |
| 233 module:log("debug", "Push for unknown feed %s -- %s", query["hub.topic"], formencode(query)); | 233 module:log("debug", "Push for unknown feed %s -- %s", query["hub.topic"], formencode(query)); |
| 234 return 404; | 234 return 404; |
| 235 end | 235 end |
| 236 | 236 |
| 252 end | 252 end |
| 253 local lease_seconds = tonumber(query["hub.lease_seconds"]); | 253 local lease_seconds = tonumber(query["hub.lease_seconds"]); |
| 254 if lease_seconds then | 254 if lease_seconds then |
| 255 feed.lease_expires = time() + lease_seconds - refresh_interval * 2; | 255 feed.lease_expires = time() + lease_seconds - refresh_interval * 2; |
| 256 end | 256 end |
| 257 return query["hub.challenge"]; | 257 return { headers = { content_type = "text/plain" }; body = query["hub.challenge"] }; |
| 258 end | 258 end |
| 259 return 400; | 259 return 400; |
| 260 elseif method == "POST" then | 260 elseif method == "POST" then |
| 261 if #body > 0 then | 261 if #body > 0 then |
| 262 module:log("debug", "got %d bytes PuSHed for %s", #body, query.node); | 262 module:log("debug", "got %d bytes PuSHed for %s", #body, query.node); |
