diff --git a/internal/pkg/api/api.go b/internal/pkg/api/api.go index 9b37abf..4717df0 100644 --- a/internal/pkg/api/api.go +++ b/internal/pkg/api/api.go @@ -78,6 +78,7 @@ func (api *API) HandleGetRandomFiles(w http.ResponseWriter, r *http.Request) { getRandomFilesResponse := &GetRandomFilesResponse{ Files: &files, } + log.Println("[api] Get random files") json.NewEncoder(w).Encode(getRandomFilesResponse) } @@ -108,20 +109,22 @@ func (api *API) HandleGetFilesInFolder(w http.ResponseWriter, r *http.Request) { Files: &files, } + log.Println("[api] Get files in folder", getFilesInFolderRequest.Folder_id) + json.NewEncoder(w).Encode(getFilesInFolderResponse) } -func (api *API) CheckToken(token string) (error) { +func (api *API) CheckToken(w http.ResponseWriter, r *http.Request, token string) (error) { if token != api.token { - return errors.New("token not matched") + err := errors.New("token not matched") + log.Println("[api] [Warning] Token not matched", token) + api.HandleErrorCode(w, r, err, 403) + return err } + log.Println("[api] Token passed") return nil } -func (api *API) HandleTokenNotMatch(w http.ResponseWriter, r *http.Request) { - api.HandleErrorStringCode(w, r, "token not match", 403) -} - func (api *API) HandleError(w http.ResponseWriter, r *http.Request, err error) { api.HandleErrorString(w, r, err.Error()) } @@ -135,7 +138,7 @@ func (api *API) HandleErrorString(w http.ResponseWriter, r *http.Request, errorS } func (api *API) HandleErrorStringCode(w http.ResponseWriter, r *http.Request, errorString string, code int) { - log.Println("Handle Error", errorString) + log.Println("[api] [Error]", code, errorString) errStatus := &Status{ Status: errorString, } @@ -152,9 +155,8 @@ func (api *API) HandleReset(w http.ResponseWriter, r *http.Request) { } // check token - err = api.CheckToken(resetRequest.Token) + err = api.CheckToken(w, r, resetRequest.Token) if err != nil { - api.HandleTokenNotMatch(w, r) return } @@ -182,9 +184,8 @@ func (api *API) HandleWalk(w http.ResponseWriter, r *http.Request) { } // check token match - err = api.CheckToken(walkRequest.Token) + err = api.CheckToken(w, r, walkRequest.Token) if err != nil { - api.HandleTokenNotMatch(w, r) return } @@ -248,6 +249,8 @@ func (api *API) HandleSearchFiles(w http.ResponseWriter, r *http.Request) { return } + log.Println("[api] Search files", searchFilesRequest.Filename, searchFilesRequest.Limit, searchFilesRequest.Offset) + json.NewEncoder(w).Encode(searchFilesResponse) } @@ -277,6 +280,8 @@ func (api *API) HandleSearchFolders(w http.ResponseWriter, r *http.Request) { return } + log.Println("[api] Search folders", searchFoldersRequest.Foldername, searchFoldersRequest.Limit, searchFoldersRequest.Offset) + json.NewEncoder(w).Encode(searchFoldersResponse) } @@ -308,6 +313,8 @@ func (api *API) HandleGetFileStream(w http.ResponseWriter, r *http.Request) { return } + log.Println("[api] Stream file", path) + cmd := exec.Command("ffmpeg", "-i", path, "-c:a", "libopus", @@ -348,6 +355,8 @@ func (api *API) HandleGetFileDirect(w http.ResponseWriter, r *http.Request) { return } + log.Println("[api] Get direct raw file", path) + http.ServeFile(w, r, path) } @@ -380,6 +389,8 @@ func (api *API) HandleGetFile(w http.ResponseWriter, r *http.Request) { return } + log.Println("[api] Get pipe raw file", path) + src, err := os.Open(path) if err != nil { api.HandleError(w, r, err) diff --git a/internal/pkg/database/database.go b/internal/pkg/database/database.go index 15a581e..653e4fd 100644 --- a/internal/pkg/database/database.go +++ b/internal/pkg/database/database.go @@ -143,6 +143,7 @@ func (database *Database) GetFile(id int64) (*File, error) { } func (database *Database) ResetFiles() (error) { + log.Println("[db] Reset files") var err error _, err = database.stmt.dropFiles.Exec() if err != nil { @@ -156,6 +157,7 @@ func (database *Database) ResetFiles() (error) { } func (database *Database) ResetFolder() (error) { + log.Println("[db] Reset folders") var err error _, err = database.stmt.dropFolder.Exec() if err != nil { @@ -173,7 +175,7 @@ func (database *Database) Walk(root string, pattern []string) (error) { for _, v := range pattern { patternDict[v] = true } - log.Println(patternDict) + log.Println("[db] Walk", root, patternDict) return filepath.Walk(root, func (path string, info os.FileInfo, err error) (error) { if err != nil { return err @@ -186,10 +188,8 @@ func (database *Database) Walk(root string, pattern []string) (error) { // check pattern ext := filepath.Ext(info.Name()) if _, ok := patternDict[ext]; !ok { - log.Println("False", ext, info.Name()) return nil } - log.Println("True", ext, info.Name()) // insert file, folder will aut created err = database.Insert(path, info.Size())