为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 golang 运行带有 css 的 html

如何使用 golang 运行带有 css 的 html

Go
DIEA 2022-05-23 17:42:07
大家,我在通过golang文件在html文件中包含css时遇到问题。本地服务器上的输出只有html文件,没有css,我该如何解决?也许我使用模板包的方式有问题,所以你能解释一下如何以不同的方式进行路由吗?示例:当您访问http://localhost:8080/login时,它会显示login.html。我看到了有关它的 net/http 文档,但要么我是盲人,要么我只是试图在那里找到错误的东西。所有文件都在同一个目录中欢迎.html<!Doctype html><html><head><meta charset="utf-8"><title>Website</title>    <link rel="stylesheet" href="style.css" ></head><body>    <link rel="stylesheet" href="style.css"><form action="">    <center><h1>Enter</h1></center>        <div class="group">            <label for="">Login:</label>            <input type="text">        </div>        <div class="group">            <label for="">Password:</label>            <input type="password">        </div>    <div class="group">            <center><button>Come in</button></center>        </div>    <center><a href="regist.html" class="link">Registration</a></center>    </form></body></html>去文件.gopackage mainimport (    "fmt"    "html/template"    "net/http")func welcome(w http.ResponseWriter, r *http.Request) {    tmpl := template.Must(template.ParseFiles("welcome.html"))    tmpl.Execute(w, nil)}func login(w http.ResponseWriter, r *http.Request) {    tmpl := template.Must(template.ParseFiles("login.html"))    tmpl.Execute(w, nil)}func main() {    http.HandleFunc("/", welcome)    http.HandleFunc("/login", login)    fmt.Println("Listening...")    http.ListenAndServe(":8080", nil)}**输出如下:**总结:如何使用 golang net/http 或 html/template 包显示带有 css 的页面?如何正确地在页面之间进行路由?对错误感到抱歉。提前谢谢各位!
查看完整描述

1 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

你的 Go 服务器不知道它应该服务style.css,因为你从来没有告诉过它。如果将该文件移动到assets/子目录,则可以注册一个处理程序来为该目录提供服务:

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

另请参阅此答案


查看完整回答
反对 回复 2022-05-23
  • 1 回答
  • 0 关注
  • 261 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信