使用 Go net/http 提供链接的 css 和 js

我无法使用链接的 css 和脚本文件使 net/http 服务 html 文件。


我有


site/lib/ratchet/css/ratchet.css

site/lib/ratchet/js/ratchet.js

在我的项目文件夹结构中,以及


site/src/index.html

在这个 index.html 中我包含了两个文件


<link href="../lib/ratchet/css/ratchet.css" rel="stylesheet">


<script src="../lib/ratchet/js/ratchet.js"></script>

和 Go 服务它的功能是:


func index(w http.ResponseWriter, r *http.Request) {

    http.ServeFile(w, r, "/Users/faruk/dev/otp/site/src/index.html")

}

在主()中:


r.HandleFunc("/", index).

    Methods("GET")

我使用上面的大猩猩/多路复用器。


我可以从浏览器查看它,但只有 html。这两个链接的文件已被赋予 404。


不能http.ServeFile为此目的自动解析链接的 css 和 js 文件以提供 index.html 或类似文件吗?在 Go net/http 中提供 html 文件的标准方法是什么?


慕丝7291255
浏览 239回答 1
1回答

米琪卡哇伊

您需要设置一个文件服务器来提供在您的 lib 目录中找到的文件。Go 在 http 包中有一个文件服务器func init() {&nbsp; &nbsp; http.Handle("/lib/", http.FileServer(http.Dir("/Users/faruk/dev/otp/site/")))}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go