使用Go 提供靜態資源
正如您在Go 編寫Web 應用程式教學中提到的,您在服務CSS 和JS 時遇到了困難去申請。讓我們深入研究這個問題並提供解決方案。
問題:
運行Go 伺服器時,CSS 和JS 資源無法訪問,儘管靜態時工作正常頁面被訪問
解決方案:
要解決此問題,您需要設定Go應用程式來處理和提供靜態資產。這是 main 函數的更新版本:
func main() { http.HandleFunc("/view/", makeHandler(viewHandler)) http.HandleFunc("/edit/", makeHandler(editHandler)) http.HandleFunc("/save/", makeHandler(saveHandler)) http.HandleFunc("/index/", makeHandler(indexHandler)) http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static")))) http.ListenAndServe(":8080", nil) }
在此程式碼中,我們使用 http.Handle 函數將「/static/」路徑對應到從「static」目錄提供檔案的處理程序。 http.FileServer 建構子建立一個處理程序,為給定目錄中的檔案提供服務,而 http.StripPrefix 在提供檔案之前從請求的路徑中刪除「/static/」前綴。
透過以這種方式配置您的應用程序,當向“/static/css/...”發出請求時,您指示伺服器從“static”目錄提供CSS 和JS 文件,或“/ static/js/...」。
附加說明:
以上是如何在我的 Go Web 應用程式中提供靜態資源(CSS 和 JS)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!