设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

html – 在Golang中加载图像和CSS

发布时间:2020-12-25 06:07 所属栏目:34 来源:网络整理
导读:我在项目根目录的package main中的server.js中设置了一个路由 http.HandleFunc( “/”,route.IndexHandler) IndexHandler在包路由中实现,如下所示: func IndexHandler(w http.ResponseWriter,r *http.Request) { data:=struct{ Name string }{ "My name",}

我在项目根目录的package main中的server.js中设置了一个路由

http.HandleFunc( “/”,route.IndexHandler)

IndexHandler在包路由中实现,如下所示:

func IndexHandler(w http.ResponseWriter,r *http.Request) {
    data:=struct{
        Name string
    }{
        "My name",}
    util.RenderTemplate(w,"index",data)
}

RenderTemplate函数在包util中实现,如下所示:

func RenderTemplate(w http.ResponseWriter,tmpl string,data interface{}) {
    cwd,_ := os.Getwd()
    t,err := template.ParseFiles(filepath.Join(cwd,"./view/" + tmpl + ".html"))
    if err != nil {
        http.Error(w,err.Error(),http.StatusInternalServerError)
        return
    }
    err = t.Execute(w,data)
    if err != nil {
        http.Error(w,http.StatusInternalServerError)
    }
}

项目中的目录结构如下:

/
/public/css
/public/images
/public/js
/route
/view

index.html视图位于文件夹视图中,路由器位于文件夹路径中

在index.html中,我包含以下资源:

< link rel =“stylesheet”type =“text / css”href =“../ public / css / style.css”>

< img src =“../ public / images / img_landing_page_mac.png”>

请求相应路径时,仍会呈现index.html,但不会加载图像和样式表.如何将它们包含在Golang html模板引擎中?

解决方法

您需要明确要求您的服务器提供静态文件.

见http.FileServer

在你的情况下注册另一个处理程

http.Handle("/public/",http.StripPrefix("/public/",http.FileServer(http.Dir("public"))))

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读