From 1ed866d31ddeec5ab484760bada2355bbf49c698 Mon Sep 17 00:00:00 2001 From: Baitinq Date: Wed, 29 May 2024 21:07:31 +0200 Subject: rest-api: Take file path in query params --- src/rest-api/handler/handler.go | 5 ++--- src/rest-api/handler/handler_test.go | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) (limited to 'src/rest-api') diff --git a/src/rest-api/handler/handler.go b/src/rest-api/handler/handler.go index 4b9a426..354378f 100644 --- a/src/rest-api/handler/handler.go +++ b/src/rest-api/handler/handler.go @@ -6,7 +6,6 @@ import ( "io" "log" "net/http" - "strings" "time" "github.com/jmoiron/sqlx" @@ -54,8 +53,8 @@ func (h Handler) ServeHTTP(w http.ResponseWriter, r *http.Request) { } func (h Handler) handleGet(w http.ResponseWriter, r *http.Request, user_id string) { - _, filePath, ok := strings.Cut(r.URL.Path, "/file/") - if !ok { + filePath := r.URL.Query().Get("path") + if filePath == "" { http.Error(w, "Invalid file path", http.StatusBadRequest) return } diff --git a/src/rest-api/handler/handler_test.go b/src/rest-api/handler/handler_test.go index 4709959..183d584 100644 --- a/src/rest-api/handler/handler_test.go +++ b/src/rest-api/handler/handler_test.go @@ -24,7 +24,7 @@ func TestHandleGet(t *testing.T) { } db.EXPECT().GetLatestFileByPath(gomock.Any(), "/tmp/file.txt", "USER_ID").Return(file, nil) - handler.handleGet(recorder, httptest.NewRequest(http.MethodGet, "/file/%2ftmp%2Ffile.txt", nil), "USER_ID") + handler.handleGet(recorder, httptest.NewRequest(http.MethodGet, "/file/?path=%2ftmp%2Ffile.txt", nil), "USER_ID") require.Equal(t, http.StatusOK, recorder.Code) require.Equal(t, fmt.Sprintln("File: ", file), recorder.Body.String()) -- cgit 1.4.1