From e8b422e390764a77b2be0b5391b2cc31e78f21ba Mon Sep 17 00:00:00 2001 From: Gregory Wells Date: Fri, 31 Jul 2026 12:38:56 -0700 Subject: [PATCH] get very simple webserver up and running --- main/main.go | 9 +++++++++ webserver/info.txt | 4 ++++ webserver/webserver.go | 6 +++++- 3 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 webserver/info.txt diff --git a/main/main.go b/main/main.go index 0230d39..b931702 100644 --- a/main/main.go +++ b/main/main.go @@ -1,13 +1,22 @@ package main import ( + "net/http" + "astraltech.xyz/calendar/v2/webserver" ) +func LoginHandler(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "text/html; charset=utf-8") + var test_html string = "Hello, world" + w.Write([]byte(test_html)) +} + func main() { read_config() init_dav_client() + webserver.ServeWebpage("/login", LoginHandler) webserver.ServeWebserver() // calDavData := get_caldav_data(serverConfig.Username, serverConfig.Password) diff --git a/webserver/info.txt b/webserver/info.txt new file mode 100644 index 0000000..bf3a46d --- /dev/null +++ b/webserver/info.txt @@ -0,0 +1,4 @@ +this is meant to be a reusable webserver component that I can integrate into applications +while it can serve custom routes it is also designed to server routes that are needed in all of my applications +Examples: +- Login page diff --git a/webserver/webserver.go b/webserver/webserver.go index a8d17db..16ce9dd 100644 --- a/webserver/webserver.go +++ b/webserver/webserver.go @@ -5,9 +5,13 @@ import ( "net/http" ) +func ServeWebpage(url string, handler func(http.ResponseWriter, *http.Request)) { + http.HandleFunc(url, handler) +} + func ServeWebserver() { err := http.ListenAndServe(":8080", nil) if err != nil { - fmt.Printf(err.Error()) + fmt.Print(err.Error()) } }