什么是使用golang将图像和CSS文件链接到用作API的html文件的合适方法
我尝试了以下代码,但是CSS和图像未呈现,我使用julienschmidt库路由API。
var tpl *template.Template
func init() {
tpl = template.Must(template.ParseGlob("*.html"))
}
func main(){
router := httprouter.New()
router.GET("/", indexPage)
}
func indexPage(w http.ResponseWriter, r *http.Request, _ httprouter.Params){
tpl.ExecuteTemplate(w, "index.html", nil)
}
在index.html中,我使用链接使用外部CSS文件
<link rel="stylesheet" type="text/css" href="public/css/main.css" />
文件结构是
/go
/src
/github.com
/My_account
/WebServerProject
-main.go
-index.html
/public
/css
-main.css
/images
答案 0 :(得分:0)
首先,您需要在Web服务器上提供静态文件,还可以将代码分段到目录中的模板中,然后提供该目录。
r := gin.Default()
files, err := filepath.Glob("./app/templates/*.tmpl")
if err == nil && files != nil {
r.LoadHTMLGlob("./app/templates/*.tmpl")
}
v1 := r.Group("/v1")
v1.Static("/static", "./_assets/static")