diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts
index 379ea33..7d0c43d 100644
--- a/frontend/vite.config.ts
+++ b/frontend/vite.config.ts
@@ -22,10 +22,9 @@ export default defineConfig({
],
server: {
proxy: {
- "/api": {
+ "^/(list|upload|file_index|race)": {
target: "http://127.0.0.1:7007",
changeOrigin: true,
- rewrite: (path) => path.replace(/^\/api/, ""),
},
},
},
diff --git a/main.go b/main.go
index f2a2056..d22c505 100644
--- a/main.go
+++ b/main.go
@@ -11,7 +11,7 @@ func main() {
_ = os.MkdirAll("dict", os.ModePerm)
_ = os.MkdirAll("text", os.ModePerm)
if len(os.Args) < 2 {
- server.Serve("7007", false)
+ server.Serve(7007, false, "")
} else {
cmd.Execute()
}
diff --git a/pkg/server/server.go b/pkg/server/server.go
index 37095c1..9a7218f 100644
--- a/pkg/server/server.go
+++ b/pkg/server/server.go
@@ -8,6 +8,7 @@ import (
"io"
"io/fs"
"net/http"
+ "path/filepath"
"strconv"
"sync"
@@ -20,7 +21,7 @@ var dist embed.FS
// 上传的文件列表
var files [][]byte = make([][]byte, 0)
-func Serve(port string, silent bool) {
+func Serve(port int, silent bool, prefix string) {
mux := http.NewServeMux()
dist, _ := fs.Sub(dist, "dist")
mux.Handle("GET /", http.FileServer(http.FS(dist)))
@@ -31,10 +32,8 @@ func Serve(port string, silent bool) {
Text []string `json:"text"`
Dict []string `json:"dict"`
}
- // text := util.WalkDirWithSuffix("./text/", ".txt")
- // dict := util.WalkDirWithSuffix("./dict/", ".txt")
- text := util.WalkDirWithSuffix(`D:\Code\go\gosmq\build\text`, ".txt")
- dict := util.WalkDirWithSuffix(`D:\Code\go\gosmq\build\dict`, ".txt")
+ text := util.WalkDirWithSuffix(filepath.Join(prefix, "text"), ".txt")
+ dict := util.WalkDirWithSuffix(filepath.Join(prefix, "dict"), ".txt")
res := Result{Text: text, Dict: dict}
json.NewEncoder(w).Encode(res)
@@ -73,7 +72,6 @@ func Serve(port string, silent bool) {
setHeader(&w)
logger.Info("POST /race")
data := r.FormValue("data")
- fmt.Printf(" data: %v\n", data)
d := &Data{}
err := json.Unmarshal([]byte(data), d)
@@ -87,11 +85,12 @@ func Serve(port string, silent bool) {
var wg sync.WaitGroup
wg.Add(1)
- port = ":" + port
- url := "http://localhost" + port
+
+ url := fmt.Sprintf("http://localhost:%d", port)
go func() {
fmt.Println("Listen and serve: ", url)
- err := http.ListenAndServe(port, mux)
+ addr := ":" + strconv.Itoa(port)
+ err := http.ListenAndServe(addr, mux)
if err != nil {
fmt.Println(err)
panic("...Serve failed.")
diff --git a/pkg/server/server_test.go b/pkg/server/server_test.go
index b1167cd..021f6bf 100644
--- a/pkg/server/server_test.go
+++ b/pkg/server/server_test.go
@@ -3,5 +3,5 @@ package server
import "testing"
func TestServer(t *testing.T) {
- Serve("7007", false)
+ Serve(7008, false, `D:\Code\go\gosmq\build`)
}