首页IT科技golang渲染html(Gin框架实战——HTML渲染)

golang渲染html(Gin框架实战——HTML渲染)

时间2025-09-17 11:19:21分类IT科技浏览6014
导读:Gin框架实战——HTML渲染 最近使用Go的Gin框架做了个简单的前端网页,记录一下细节~...

Gin框架实战——HTML渲染

最近使用Go的Gin框架做了个简单的前端网页                ,记录一下细节~

1.加载静态文件

由于网页需要使用css                、图片等渲染                       ,而静态文件必须先声明:否则模板中调用加载不出来       ,这个很重要            ,即使你把文件放到对应路径下                        ,html中也写了相应的路径           ,但是开启go服务端的网页        ,会显示不出来样式                       、图片等               。因此需要加载静态文件                       。

这里的加载资源                        ,我的理解是更换路径               ,本地的文件路径    ,换成工程里设置的路径        。

有两种方式:①r.Static(路由                        ,静态文件夹)另外一种写法:r.StaticFS("/static"路由,http.Dir("static")资源)

这种方法是加载一个文件下所有的文件                   ,但是不加载文件里子文件的内容            。如使用

r.StaticFS("/public",http.Dir(./static))

加载下图的static文件夹下的文件,main.css       、admin_login.css            、common.css可以使用public/main.css路径代替原有路径                    ,然后public/fonts文件貌似里面的内容加载不出来                       ,所以    ,不知道是不是我的问题                ,我认为是只能加载文件夹下的文件                       ,而不能加载文件夹下文件里面的文件(不能递归)                       。

使用router.StaticFile("/favicon.ico", "./resources/favicon.ico")加载单个文件       ,就是那个文件的路径换成StaticFile函数里第一个参数的路径即可            。

2.HTML渲染

使用LoadHTMLGlob加载html文件,使用get/post方法从html文件里获取前端数据        。

controller.IndexController函数为:

func IndexController(c *gin.Context) { c.HTML(http.StatusOK, "login.html", gin.H{ "Title": "开元十年", }) }

这个函数表示为            ,http的状态码为StatusOK时                        ,加载login.html文件                       。效果图为:

参考文章:

https://zhuanlan.zhihu.com/p/484462011

https://blog.csdn.net/m764395448/article/details/109113426?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167371151716800213068248%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=167371151716800213068248&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-109113426-null-null.142^v71^pc_new_rank,201^v4^add_ask&utm_term=gin%E6%A1%86%E6%9E%B6&spm=1018.2226.3001.4187

声明:本站所有文章           ,如无特殊说明或标注        ,均为本站原创发布                。任何个人或组织                        ,在未征得本站同意时               ,禁止复制                        、盗用           、采集        、发布本站内容到任何网站                        、书籍等各类媒体平台    。如若本站内容侵犯了原著者的合法权益    ,可联系我们进行处理                       。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
前端跨域问题解决方案(前端解决跨域问题(9个方法)) 移动文件的操作(mmove命令 – 移动文件或目录)