Add 'Server' HTTP header with current GoTTY version

$ curl -I http://gotty.server/
    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Content-Length: 407
    Content-Type: text/html; charset=utf-8
    Last-Modified: Fri, 02 Oct 2015 08:04:28 GMT
    Server: GoTTY/0.0.10
    Date: Fri, 02 Oct 2015 08:04:28 GMT
This commit is contained in:
Manfred Touron 2015-10-02 10:01:37 +02:00
parent 096f77c780
commit f75cc9771a
No known key found for this signature in database
GPG Key ID: 0DCB9CE0CABAE1B5
2 changed files with 12 additions and 1 deletions

View File

@ -53,6 +53,8 @@ type Options struct {
Preferences map[string]interface{} `hcl:"preferences"`
}
var Version = "0.0.10"
var DefaultOptions = Options{
Address: "",
Port: "8080",
@ -154,6 +156,8 @@ func (app *App) Run() error {
siteHandler = wrapBasicAuth(siteHandler, app.options.Credential)
}
siteHandler = wrapHeaders(siteHandler)
wsMux := http.NewServeMux()
wsMux.Handle("/", siteHandler)
wsMux.Handle(path+"/ws", wsHandler)
@ -277,6 +281,13 @@ func wrapLogger(handler http.Handler) http.Handler {
})
}
func wrapHeaders(handler http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Server", "GoTTY/"+Version)
handler.ServeHTTP(w, r)
})
}
func wrapBasicAuth(handler http.Handler, credential string) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
token := strings.SplitN(r.Header.Get("Authorization"), " ", 2)

View File

@ -13,7 +13,7 @@ import (
func main() {
cmd := cli.NewApp()
cmd.Version = "0.0.10"
cmd.Version = app.Version
cmd.Name = "gotty"
cmd.Usage = "Share your terminal as a web application"
cmd.HideHelp = true