diff options
author | Adam Mathes <adam@trenchant.org> | 2018-07-04 14:58:43 -0700 |
---|---|---|
committer | Adam Mathes <adam@trenchant.org> | 2018-07-04 14:58:43 -0700 |
commit | ee5bf1d50b9165729d0c61f7d1f968949e3e0638 (patch) | |
tree | 2c95b0a2a7563d7882712676f99d78cd6f563d93 /web/web.go | |
parent | d0911491b52a56f713da9ebe26f993bf786cce84 (diff) | |
download | neko-ee5bf1d50b9165729d0c61f7d1f968949e3e0638.tar.gz neko-ee5bf1d50b9165729d0c61f7d1f968949e3e0638.tar.bz2 neko-ee5bf1d50b9165729d0c61f7d1f968949e3e0638.zip |
enable feed export from web interface
Diffstat (limited to 'web/web.go')
-rw-r--r-- | web/web.go | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -3,6 +3,7 @@ package web import ( "adammathes.com/neko/config" "adammathes.com/neko/crawler" + "adammathes.com/neko/exporter" "adammathes.com/neko/models/feed" "adammathes.com/neko/models/item" "encoding/base64" @@ -193,6 +194,13 @@ func imageProxyHandler(w http.ResponseWriter, r *http.Request) { return } +func exportHandler(w http.ResponseWriter, r *http.Request) { + format := r.URL.String() + w.Header().Set("content-type", "text/plain") + w.Write([]byte(exporter.ExportFeeds(format))) + return +} + func fullTextHandler(w http.ResponseWriter, r *http.Request) { fmt.Printf("request: %v\n\n", r) @@ -289,6 +297,7 @@ func Serve() { http.HandleFunc("/feed/", AuthWrap(feedHandler)) http.HandleFunc("/tag/", AuthWrap(categoryHandler)) http.Handle("/image/", http.StripPrefix("/image/", AuthWrap(imageProxyHandler))) + http.Handle("/export/", http.StripPrefix("/export/", AuthWrap(exportHandler))) http.HandleFunc("/login/", loginHandler) http.HandleFunc("/logout/", logoutHandler) |