From 4b2fd8dd048b459cfef55131326be832b749258a Mon Sep 17 00:00:00 2001 From: Guanran Wang Date: Fri, 30 Aug 2024 06:36:57 +0800 Subject: [PATCH] chore: better path joining --- main.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index 6313fac..279af58 100644 --- a/main.go +++ b/main.go @@ -5,7 +5,9 @@ import ( "io" "log" "net/http" + "net/url" "os" + "path" "github.com/google/uuid" ) @@ -46,15 +48,20 @@ or: cmd | curl --data-binary @- %s log.Fatalln(err) } - os.WriteFile("db/"+uuid.String(), body, 0644) - fmt.Fprintf(w, hostURL+uuid.String()) + os.WriteFile(path.Join("db", uuid.String()), body, 0644) + url, err := url.JoinPath(hostURL, uuid.String()) + if err != nil { + log.Fatalln(err) + } + fmt.Fprintf(w, url) log.Printf("paste created: uuid=%s", uuid.String()) default: http.Error(w, "method not allowed", http.StatusMethodNotAllowed) } }) - http.Handle("/", http.FileServer(http.Dir("db"))) + http.Handle("/", http.FileServer(http.Dir(databasePath))) + log.Printf("Starting server on %s", listenAddr) log.Fatal(http.ListenAndServe(listenAddr, nil)) }