Commit 36dfe5de by Iwasaki Yudai

Merge pull request #71 from moul/header-server

Add 'Server' HTTP header with current GoTTY version
2 parents 096f77c7 f75cc977
Showing with 12 additions and 1 deletions
......@@ -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)
......
......@@ -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
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!