1
0
mirror of https://github.com/fumiama/paper-manager.git synced 2026-06-09 02:01:31 +08:00
Files
paper-manager/backend/file/provider.go
2023-03-16 14:03:58 +08:00

27 lines
602 B
Go

package file
import (
"net/http"
"strings"
"github.com/fumiama/paper-manager/backend/global"
"github.com/fumiama/paper-manager/backend/utils"
"github.com/sirupsen/logrus"
)
// Handler serves contents in global.FileFolder
func Handler(w http.ResponseWriter, r *http.Request) {
if !utils.IsMethod("GET", w, r) {
return
}
i := strings.LastIndex(r.URL.Path, "/")
fn := r.URL.Path[i+1:]
if fn == "" {
http.Error(w, "400 Bad Request: empty path", http.StatusBadRequest)
return
}
name := global.FileFolder + fn
logrus.Infoln("[file.Handler]\t serve", name)
http.ServeFile(w, r, name)
}