2017-02-15 28 views
1

我正在使用一個Golang數據庫項目,在其中我想使用React創建前端。我正在使用與我的index.html鏈接的反應腳本。使用GoLang時找不到反應腳本http.FileServer

當我直接打開我的index.html時,我的反應腳本工作,頁面格式正確。然而,當我試圖通過我的服務器打開網頁,腳本都沒有找到,我得到一個404錯誤:

::1 - - [15/Feb/2017:16:16:24 -0500] "GET /build/react.js HTTP/1.1" 404 19 

爲了從我Golang服務器訪問的index.html我用:

r.Handle("/", http.FileServer(http.Dir("./views"))) 

我想這個問題是與使用http.FileServer訪問HTML。我試圖在各種位置查找我的構建文件夾,最近在視圖文件夾中,總是以相同的結果,當直接打開html時,反應腳本起作用,但當我的服務器訪問html時,它們不起作用。

是否還有另外一種方法可以用來完成此操作,還是我如何組織依賴項?在我的主要功能,以服務於反應腳本

r.PathPrefix("/build/").Handler(http.StripPrefix("/build/", http.FileServer(http.Dir("./build/")))) 

+0

同樣重要的是要注意:我使用Gorilla(https://github.com/gorilla/mux)進行路由。 –

+0

r來自r:= mux.NewRouter() –

+0

請發表評論,以便我們能複製它 –

回答

0

我加入解決了這個問題。我的文件結構是:

main.go 
views 
-- index.html (views/index.html) 
build 
-- react.js (build/react.js) 
-- react-dom.js (build/react.js) 
-- other react scripts... 

希望這可以幫助其他任何人解決這個問題。