Go語言實現簡單的一個靜態WEB服務器
首先,搭建一個靜態的服務器 我寫程序喜歡使用HTML通過AJAX發送JSON請求到后端處理。 HttpServer.go 代碼如下:
package main import ( "flag" "io/ioutil" "log" "net/http" "os" "strings" ) var realPath *string func staticResource(w http.ResponseWriter, r *http.Request) { path := r.URL.Path request_type := path[strings.LastIndex(path, "."):] switch request_type { case ".css": w.Header().Set("content-type", "text/css") case ".js": w.Header().Set("content-type", "text/javascript") default: } fin, err := os.Open(*realPath + path) defer fin.Close() if err != nil { log.Fatal("static resource:", err) } fd, _ := ioutil.ReadAll(fin) w.Write(fd) } func main() { realPath = flag.String("path", "", "static resource path") flag.Parse() http.HandleFunc("/", staticResource) err := http.ListenAndServe(":8080", nil) if err != nil { log.Fatal("ListenAndServe:", err) } }
更BT的方法:
package main import ( "net/http" ) func main() { http.Handle("/", http.FileServer(http.Dir("/tmp/static/"))) http.ListenAndServe(":8080", nil) }
將EasyUI前端框架解壓到 /tmp/static 目錄下:
在GOPATH下執行
go run HttpServer.go --path=/tmp/static
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!