gpt4 book ai didi

GO:提供静态页面

转载 作者:IT王子 更新时间:2023-10-29 01:39:54 25 4
gpt4 key购买 nike

我正在尝试使用 GO 显示静态页面。

开始:

package main

import "net/http"

func main() {
fs := http.FileServer(http.Dir("static/home"))
http.Handle("/", fs)
http.ListenAndServe(":4747", nil)
}

目录:

Project
/static
home.html
edit.html
project.go

当我运行它时,网页显示指向 edit.html 和 home.html 的链接,而不是显示来自 home.html 的静态页面。我究竟做错了什么。这是提供文件的最佳方式吗?我知道还有其他方法,例如。来自 html/templates 包,但我不确定有什么区别以及何时使用这些方法。谢谢!

最佳答案

func main() {
http.Handle("/", http.FileServer(http.Dir("static")))
http.ListenAndServe(":4747", nil)
}

你不需要static/home,只需要static

FileServer正在使用 directory listing由于 /static 中没有 index.html,因此会显示目录内容。

一个快速的修复方法是将 home.html 重命名为 index.html。这将允许您通过 http://localhost:4747/edit.html 使用 http:/访问 index.html/localhost:4747/edit.html.

如果您只需要提供静态文件,则无需使用 html/template

但干净的解决方案取决于您实际尝试做什么。

关于GO:提供静态页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24980927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com