使用 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中文网其他相关文章!