Go搭建一个Web服务器

package main

import (
	"fmt"
	"net/http"
	"strings"
	"log"
)

func sayhelloName(w http.ResponseWriter, r *http.Request) {
	r.ParseForm()  //解析参数,默认是不会解析的map[url_long:[111 222]]
	fmt.Println(r.Form)  //这些信息是输出到服务器端的打印信息
	fmt.Println("path", r.URL.Path)  //对应path
	fmt.Println("scheme", r.URL.Scheme) //对应scheme
	fmt.Println(r.Form["url_long"])  //对应字典的值[111 222]
	for k, v := range r.Form {
		fmt.Println("key:", k)   //url_long
		fmt.Println("val:", strings.Join(v, ""))  //111222,因为是放入字符串中
	}
	fmt.Fprintf(w, "Hello astaxie!") //这个写入到w的是输出到客户端的
}   //描述了响应内容

func main() {
	http.HandleFunc("/", sayhelloName) //设置访问的路由
	err := http.ListenAndServe(":9999", nil) //设置监听的端口
	if err != nil {
		log.Fatal("ListenAndServe: ", err)  //如果报错,可能端口占用等
	}
}

  

猜你喜欢

转载自www.cnblogs.com/esiarp/p/8990589.html