cache headers, redirect to format=html by default

This commit is contained in:
Michael Stapelberg
2020-06-20 10:30:44 +02:00
parent 0d97aa3ca1
commit 32f7e8a5c5
2 changed files with 7 additions and 9 deletions

View File

@@ -134,7 +134,11 @@ func logic() error {
debugHTML(w, r, prefix, qrch)
}
// TODO: add cache control headers
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control
// […] this alone is the only directive you need in preventing cached
// responses on modern browsers.
w.Header().Add("Cache-Control", "no-store")
if _, err := io.Copy(w, bytes.NewReader(b)); err != nil {
log.Printf("%s %s", prefix, err)
return
@@ -146,13 +150,7 @@ func logic() error {
http.Error(w, "not found", http.StatusNotFound)
return
}
w.Header().Add("Content-Type", "text/html; charset=utf-8")
// TODO: add explanation for how to construct a URL
// e.g. for usage in filemaker web view
fmt.Fprintf(w, "<ul>")
fmt.Fprintf(w, `<li>PNG referenz: <a href="/qr.png">qr.png</a>`+"\n")
fmt.Fprintf(w, `<li>SVG scalable: <a href="/qr.svg">qr.svg</a>`+"\n")
fmt.Fprintf(w, `<li>debug: <a href="/qr.html">qr.html</a>, or <a href="/qr.txt">qr.txt</a>`+"\n")
http.Redirect(w, r, "/qr?format=html", http.StatusFound)
})
log.Printf("QR Bill generation URL: http://%s/qr?format=html", *listen)
return http.ListenAndServe(*listen, nil)

2
go.mod
View File

@@ -6,6 +6,6 @@ require (
github.com/aaronarduino/goqrsvg v0.0.0-20170617203649-603647895681
github.com/ajstarks/svgo v0.0.0-20200320125537-f189e35d30ca
github.com/boombuler/barcode v1.0.0
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/davecgh/go-spew v1.1.1
github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e
)