diff options
| author | Max Resnick <max@ofmax.li> | 2022-03-08 10:17:14 -0800 |
|---|---|---|
| committer | Max Resnick <max@ofmax.li> | 2022-03-08 10:17:14 -0800 |
| commit | be86886bc9cfd708a222fb3b6453839298914459 (patch) | |
| tree | 0cc1344400deff04702875bff2c1e83388d21541 | |
| download | go-echo-be86886bc9cfd708a222fb3b6453839298914459.tar.gz | |
init commit
| -rw-r--r-- | README.md | 3 | ||||
| -rw-r--r-- | go.mod | 3 | ||||
| -rw-r--r-- | main.go | 27 |
3 files changed, 33 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..cdb00ce --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# go-echo + +A simple golang echo server that returns headers. @@ -0,0 +1,3 @@ +module go.ofmax.li/go-echo + +go 1.17 @@ -0,0 +1,27 @@ +package main + +import ( + "fmt" + "log" + "net/http" + "time" +) + +func echo(w http.ResponseWriter, req *http.Request) { + startTime := time.Now() + log.Printf("request recv %v", startTime) + fmt.Fprintf(w, "start time: %v\n", startTime) + for key, value := range req.Header { + for _, v := range value { + fmt.Fprintf(w, "%v: %v\n", key, v) + } + } + endTime := time.Now() + fmt.Fprintf(w, "end time: %v\n", endTime) +} + +func main() { + http.HandleFunc("/", echo) + log.Println("...starting echo server...") + http.ListenAndServe(":9000", nil) +} |