all repos — emessage @ 7631da04b763cb6ecfdeddbd75e50eba4983bfa2

The EMessage email client

go-selfupdate/example/src/example-server/main.go (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
package main

import (
	"flag"
	"log"
	"net/http"
)

var servePath = flag.String("dir", "./public", "path to serve")

type logHandler struct {
	handler http.Handler
}

func (lh *logHandler) ServeHTTP(rw http.ResponseWriter, r *http.Request) {
	log.Printf("(example-server) received request %s\n", r.URL.RequestURI())
	lh.handler.ServeHTTP(rw, r)
}

func main() {
	log.SetFlags(log.LstdFlags | log.Lshortfile)
	flag.Parse()

	// Simple static webserver with logging:
	log.Printf("Starting HTTP server on :8080 serving path %q Ctrl + C to close and quit", *servePath)
	log.Fatal(http.ListenAndServe(":8080", &logHandler{
		handler: http.FileServer(http.Dir(*servePath))},
	))
}