Files
go_process_manager/internal/app/api/file.go
2025-02-10 17:23:02 +08:00

34 lines
944 B
Go

package api
import (
"github.com/lzh-1625/go_process_manager/internal/app/logic"
"github.com/gin-gonic/gin"
)
type file struct{}
var FileApi = new(file)
func (f *file) FilePathHandler(ctx *gin.Context) {
path := getQueryString(ctx, "path")
rOk(ctx, "Operation successful!", logic.FileLogic.GetFileAndDirByPath(path))
}
func (f *file) FileWriteHandler(ctx *gin.Context) {
path := ctx.PostForm("filePath")
fi, err := ctx.FormFile("data")
errCheck(ctx, err != nil, "Read file data failed!")
fiReader, _ := fi.Open()
err = logic.FileLogic.UpdateFileData(path, fiReader, fi.Size)
errCheck(ctx, err != nil, "Update file data operation failed!")
rOk(ctx, "Operation successful!", nil)
}
func (f *file) FileReadHandler(ctx *gin.Context) {
path := getQueryString(ctx, "filePath")
bytes, err := logic.FileLogic.ReadFileFromPath(path)
errCheck(ctx, err != nil, "Operation failed!")
rOk(ctx, "Operation successful!", string(bytes))
}