版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33781658/article/details/84586698
搭建一下简单的
http服务器
我们来搞一个服务器
当访问对应的文件夹下的文件的时候
我们就打开这个文件
我们先写一个简单的
监听根目录
func main() {
//注册监听"/"根目录
http.HandleFunc("/", handlerFunc)
//开启监听服务
http.ListenAndServe("127.0.0.1:8080", nil)
}
//处理根目录请求
func handlerFunc(writer http.ResponseWriter, request *http.Request) {
str := "hello world"
writer.Write([]byte(str))
}
然后我们开启另一个监听
然后访问对应目录的文件
func main() {
//注册监听"/"根目录
http.HandleFunc("/", handlerFunc)
//注册监听test
http.HandleFunc("/test/", testFunc)
//开启监听服务
http.ListenAndServe("127.0.0.1:8080", nil)
}
func testFunc(writer http.ResponseWriter, request *http.Request) {
//获取url
url := request.URL.String()
fmt.Println("url:", url)
//打开对应目录的file文件
file, _ := os.Open("f:" + url)
//创建arr切片
arr := make([]byte, 1024)
//循环读取并写入到客户端
for {
num, err := file.Read(arr)
writer.Write(arr[:num])
if err == io.EOF {
break
}
}
}
//处理根目录请求
func handlerFunc(writer http.ResponseWriter, request *http.Request) {
str := "hello world"
writer.Write([]byte(str))
}