无法在GoLang中读取文件
Can't read file in GoLang
我是 GoLang 开发新手,正在尝试制作一个简单的网络应用程序。我一直在关注本教程 https://www.youtube.com/watch?v=AiRhWG-2nGU。
但是我什至无法提供 index.html 文件。
这是我的代码
func check(e error) {
if e != nil {
fmt.Println(e)
panic(e)
}
}
func Index(w http.ResponseWriter, r *http.Request) {
fmt.Println("Index functoin")
indexHTML, err := ioutil.ReadFile("index.html")
check(err)
fmt.Println(indexHTML)
w.Write(indexHTML)
}
这是产生的错误
Index functoin
open index.html: no such file or directory
我的树结构是这样的
BasicWebServer/
BasicWebServer/main.go
BasicWebServer/index.html
BasicWebServer/static/
BasicWebServer/static/index.html
我想要的只是能够为 index.html 提供服务,因为它是一个 AngularJS 应用程序,已经 运行 顺利。我试过这样的静态文件
router := NewRouter()
s := http.StripPrefix("/static/", http.FileServer(http.Dir("./static/")))
但它没有用,所以我现在正在尝试我能想到的最基本的方法。
请帮忙。
谢谢
如果您希望 BasicWebServer/main.go
显示 BasicWebServer/index.html
,而不是 static
文件夹中的那个,那么您似乎没有正确配置 HTTP 服务器。
这是您的代码,包含包声明、导入和一个按预期工作的 main
函数。
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func check(e error) {
if e != nil {
fmt.Println(e)
panic(e)
}
}
func Index(w http.ResponseWriter, r *http.Request) {
fmt.Println("Index functoin")
indexHTML, err := ioutil.ReadFile("index.html")
check(err)
fmt.Println(indexHTML)
w.Write(indexHTML)
}
func main() {
http.HandleFunc("/", Index)
err := http.ListenAndServe(":8080", nil)
check(err)
}
我是 GoLang 开发新手,正在尝试制作一个简单的网络应用程序。我一直在关注本教程 https://www.youtube.com/watch?v=AiRhWG-2nGU。
但是我什至无法提供 index.html 文件。
这是我的代码
func check(e error) {
if e != nil {
fmt.Println(e)
panic(e)
}
}
func Index(w http.ResponseWriter, r *http.Request) {
fmt.Println("Index functoin")
indexHTML, err := ioutil.ReadFile("index.html")
check(err)
fmt.Println(indexHTML)
w.Write(indexHTML)
}
这是产生的错误
Index functoin
open index.html: no such file or directory
我的树结构是这样的
BasicWebServer/
BasicWebServer/main.go
BasicWebServer/index.html
BasicWebServer/static/
BasicWebServer/static/index.html
我想要的只是能够为 index.html 提供服务,因为它是一个 AngularJS 应用程序,已经 运行 顺利。我试过这样的静态文件
router := NewRouter()
s := http.StripPrefix("/static/", http.FileServer(http.Dir("./static/")))
但它没有用,所以我现在正在尝试我能想到的最基本的方法。
请帮忙。
谢谢
如果您希望 BasicWebServer/main.go
显示 BasicWebServer/index.html
,而不是 static
文件夹中的那个,那么您似乎没有正确配置 HTTP 服务器。
这是您的代码,包含包声明、导入和一个按预期工作的 main
函数。
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func check(e error) {
if e != nil {
fmt.Println(e)
panic(e)
}
}
func Index(w http.ResponseWriter, r *http.Request) {
fmt.Println("Index functoin")
indexHTML, err := ioutil.ReadFile("index.html")
check(err)
fmt.Println(indexHTML)
w.Write(indexHTML)
}
func main() {
http.HandleFunc("/", Index)
err := http.ListenAndServe(":8080", nil)
check(err)
}