我正在使用 golang 作為中型 Web 應用程序的后端,該應用程序在不同的文件夾中有幾個頁面和大量 CSS 和 javascript,我正在嘗試使用 golang 為網站提供服務,但只加載索引文件,另一個頁面、javascript、CSS 不加載。因為我的 HTML 文件彼此不同,所以我沒有使用模板這是文件結構-static -assets -css(folder with subfolders) -js(folder with subfolders) -pages (folder with differnt html pages) -signup.html -dashboard.html -index.html -register_bundle.js-main.gofunc handlerequests (){ myRouter := mux.NewRouter().StrictSlash(true) myRouter.Handle("/", http.FileServer(http.Dir("./static"))) myRouter.HandleFunc("/transaction", transactionHandler) log.Fatal(http.ListenAndServe(":8080",myRouter))}我的 HTML 文件有這樣的鏈接,(顯示 index.html)<!-- CSS Files --> <link href="./assets/css/bootstrap.min.css" rel="stylesheet" /> <link href="./assets/css/paper-dashboard.css?v=2.1.1" rel="stylesheet" /><!--JS files --> <script src="./assets/demo/demo.js"></script> <!--Main Script file for the page --> <script src="./register_bundle.js"></script>此處顯示的錯誤
3 回答

守候你守候我
TA貢獻1802條經驗 獲得超10個贊
問題是瀏覽器找不到那些 JS 和 CSS 文件。
fs := http.FileServer(http.Dir("./static")) MUXRouter.Handle("/", fs) MUXRouter.PathPrefix("/assets/").Handler(fs) MUXRouter.PathPrefix("/pages/").Handler(fs) MUXRouter.Handle("/register_bundle.js", fs)
這樣一個 GET 請求http://[host]:[port]/css/style.css
將從相關./static/css/
目錄返回 style.css。上面的代碼在我的示例程序中運行。

幕布斯7119047
TA貢獻1794條經驗 獲得超8個贊
嘗試
gor:= mux.NewRouter().StrictSlash(true)
fs := http.FileServer(http.Dir("./static"))
gor.PathPrefix("/transaction").Handler(fs)
如果它不只是嘗試閱讀 http.FileServer 的文檔,它可能應該工作

慕仙森
TA貢獻1827條經驗 獲得超8個贊
您是否嘗試為您的資源文件夾提供處理程序?
sdir := "/resources/"
myRouter.PathPrefix(sdir).Handler(http.StripPrefix(sdir, http.FileServer(http.Dir("."+sdir))))
這允許您將文件夾作為子域訪問。
- 3 回答
- 0 關注
- 201 瀏覽
添加回答
舉報
0/150
提交
取消