summaryrefslogtreecommitdiff
path: root/src/gmi/gmi.go
diff options
context:
space:
mode:
authorBrian Picciano <mediocregopher@gmail.com>2023-02-13 17:52:17 +0100
committerBrian Picciano <mediocregopher@gmail.com>2023-02-13 17:52:17 +0100
commit7d48d2abba46570ad67fa9f4b8c0b4e023fc2eed (patch)
tree4aa9983e4c0d6f4d5fc41f518be66cce76cfb7e8 /src/gmi/gmi.go
parent8108d55c29b30a261380a4f124e848543e5c56ae (diff)
Fix mediaType for feed.xml over gemini
Diffstat (limited to 'src/gmi/gmi.go')
-rw-r--r--src/gmi/gmi.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gmi/gmi.go b/src/gmi/gmi.go
index c2a32aa..115f379 100644
--- a/src/gmi/gmi.go
+++ b/src/gmi/gmi.go
@@ -161,6 +161,18 @@ func indexMiddleware(h gemini.Handler) gemini.Handler {
})
}
+func feedMiddleware(h gemini.Handler) gemini.Handler {
+
+ return gemini.HandlerFunc(func(
+ ctx context.Context,
+ rw gemini.ResponseWriter,
+ r *gemini.Request,
+ ) {
+ rw = forceResponseWriterMediaType(rw, "application/atom+xml")
+ h.ServeGemini(ctx, rw, r)
+ })
+}
+
func postsMiddleware(tplHandler gemini.Handler) gemini.Handler {
return gemini.HandlerFunc(func(
@@ -228,6 +240,7 @@ func (a *api) handler() (gemini.Handler, error) {
mux := new(gemini.Mux)
mux.Handle("/posts/", postsMiddleware(tplHandler))
mux.Handle("/assets/", a.assetsMiddleware())
+ mux.Handle("/feed.xml", feedMiddleware(tplHandler))
mux.Handle("/", tplHandler)
var h gemini.Handler