您遇到了在 Go 模板中包含本地 JavaScript 文件的问题。让我们探讨如何轻松解决此问题:
选项 1:手动文件处理
编写自己的处理函数来读取文件内容,设置适当的内容类型,并将其作为回复发送:
func SendJqueryJs(w http.ResponseWriter, r *http.Request) { data, err := ioutil.ReadFile("jquery.min.js") if err != nil { http.Error(w, "Couldn't read file", http.StatusInternalServerError) return } w.Header().Set("Content-Type", "application/javascript; charset=utf-8") w.Write(data) }
选项 2:使用http.ServeFile()
此函数通过处理文件读取和内容类型设置来简化文件服务:
func SendJqueryJs(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "jquery.min.js") }
选项 3:利用 http.FileServer()
用于服务多个静态files:
http.Handle("/tmpfiles/", http.StripPrefix("/tmpfiles/", http.FileServer(http.Dir("/tmp"))))
这会在 /tmpfiles/ 注册一个处理程序,为本地 /tmp 目录中的文件提供服务。
例如,此脚本标记将从 / 加载 jquery.min.js tmp:
<script type="text/javascript" src="/tmpfiles/jquery.min.js">
以上是如何在 Go 模板中包含本地 JavaScript 文件?的详细内容。更多信息请关注PHP中文网其他相关文章!