使用Go Web 伺服器提供靜態HTML 文件
為了提供像index.html 這樣的靜態HTML 文件,Go 的net/http 包提供了一個優雅的解決方案。其實作方式如下:
package main import ( "net/http" ) func main() { http.Handle("/", http.FileServer(http.Dir("./static"))) http.ListenAndServe(":3000", nil) }
此程式碼假設您的靜態檔案儲存在專案根目錄中名為「static」的目錄中。透過呼叫 FileServer() 函數並向其傳遞包含 HTML 檔案的目錄,您可以指示 Web 伺服器原樣提供這些檔案。
當您造訪 http://localhost:3000/ 時,index.html 會顯示為索引。將渲染靜態目錄中的 html 檔案。該目錄中的其他文件也可以透過修改 URL 直接存取。
從不同的 URL 提供檔案
如果您喜歡從特定的 URL提供靜態檔案URL,例如http://localhost:3000/static,您可以利用StripPrefix()函數:
package main import ( "net/http" ) func main() { http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("./public")))) http.ListenAndServe(":3000", nil) }
這段程式碼設定啟動處理程序,在從「public」目錄提供文件之前,從請求URL 中刪除“/static/”。因此,可以透過 http://localhost:3000/static/ 存取公用目錄中的檔案。
以上是如何使用 Go Web 伺服器提供靜態 HTML 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!