package mainimport("fmt""net/http")var urls =[]string{"http://www.google.com/","http://golang.org/","http://blog.golang.org/",}// 使用http.Head方法,如果地址不通,自己换一个,这些是国外的,需要代理或者开加速器才行funcmain(){// Execute an HTTP HEAD request for all url's// and returns the HTTP status string or an error string.for_, url :=range urls {resp, err := http.Head(url)if err !=nil{fmt.Println("Error:", url, err)}fmt.Println(url,": ", resp.Status)}}
另一个 http.Request 对象 req 的重要属性:req.Method,这是一个包含 GET 或 POST 字符串,用来描述网页是以何种方式被请求的。
w.header().Set("Content-Type", "../..") 设置头信息,比如在网页应用发送 html 字符串的时候,在输出之前执行 w.Header().Set(“Content-Type”, “text/html”),注:w再这里是指http.ResponseWriter
我是demo
package mainimport("io""net/http")const form =`<html><body><form action="#" method="post" name="bar"><input type="text" name="in" /><input type="submit" value="submit"/></form></body></html>
`/* handle a simple get request */funcSimpleServer(w http.ResponseWriter, request *http.Request){io.WriteString(w,"<h1>hello, world</h1>")}funcFormServer(w http.ResponseWriter, request *http.Request){w.Header().Set("Content-Type","text/html")switch request.Method {case"GET":/* display the form to the user */io.WriteString(w, form)case"POST":/* handle the form data, note that ParseForm mustbe called before we can extract form data *///request.ParseForm();//io.WriteString(w, request.Form["in"][0])io.WriteString(w, request.FormValue("in"))}}funcmain(){http.HandleFunc("/test1", SimpleServer)http.HandleFunc("/test2", FormServer)if err := http.ListenAndServe(":8088",nil); err !=nil{panic(err)}}