From 088ab402eb1d412fdbaa3b0b0c0da5f7c1b784c7 Mon Sep 17 00:00:00 2001 From: charlie <3140647@qq.com> Date: Wed, 5 Jun 2024 22:02:47 +0800 Subject: [PATCH] init --- .gitignore | 1 + go.mod | 3 +++ main.go | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 .gitignore create mode 100644 go.mod create mode 100644 main.go diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8e5400b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +echo.exe diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..426830f --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module echo + +go 1.22.4 diff --git a/main.go b/main.go new file mode 100644 index 0000000..7e130d4 --- /dev/null +++ b/main.go @@ -0,0 +1,36 @@ +package main + +import ( + "fmt" + "log" + "net/http" + "os" +) + +var name string + +func main() { + hostname, err := os.Hostname() + if err != nil { + log.Println("got hostname error:", err) + } + + name = hostname + + http.HandleFunc("/echo", echoHandler) + + fmt.Println("Starting server on :8080") + if err := http.ListenAndServe(":8080", nil); err != nil { + log.Fatal(err) + } + +} + +func echoHandler(w http.ResponseWriter, r *http.Request) { + clientIp := getRemoteIP(r) + fmt.Fprintf(w, "hello %s Host %s provides services", clientIp, name) +} + +func getRemoteIP(r *http.Request) string { + return r.RemoteAddr +}