golang 简单web服务

1.golang print输入

package main

import "fmt"

func main() {
	fmt.Printf("Hello World!\n")
}

执行以下命令
go build print.gogolang

 

2. go web 服务端

Go语言标准库 - net/http

Go Web服务器的搭建就须要用到Go语言官方提供的标准库 net/http,经过http包提供了HTTP客户端和服务端的实现。同时使用这个包能很简单地对web的路由,静态文件,模版,cookie等数据进行设置和操做。web

http包创建Web服务器

package main import ( "fmt"
    "net/http"
    "strings"
    "log" ) func sayhelloName(w http.ResponseWriter, r *http.Request) { r.ParseForm() //解析参数,默认是不会解析的
    fmt.Println(r.Form) //这些信息是输出到服务器端的打印信息
    fmt.Println("path", r.URL.Path) fmt.Println("scheme", r.URL.Scheme) fmt.Println(r.Form["url_long"]) for k, v := range r.Form { fmt.Println("key:", k) fmt.Println("val:", strings.Join(v, "")) } fmt.Fprintf(w, "Hello Wrold!") //这个写入到w的是输出到客户端的
} func main() { http.HandleFunc("/", sayhelloName) //设置访问的路由
    err := http.ListenAndServe(":9090", nil) //设置监听的端口
    if err != nil { log.Fatal("ListenAndServe: ", err) } }

上面的代码咱们在IDE中编译后并运行成功后,这个时侯咱们就能够在9090端口监听http连接请求了。浏览器

们在浏览器中输入了 http://ip:9090,能够看到浏览器页面中输入出 Hello World!
这个时侯若是咱们在浏览器地址后面加一些参数试试:http://ip:9090?url_long=111&url_long=222,服务器

看看浏览器中输出什么?服务器端输出的又是什么?cookie

map[url_long:[111 222]] path / scheme [111 222] key: url_long val: 111222
 

咱们看到了上面的代码,要编写一个Web服务器是否是很简单,只要调用http包的两个函数就能够了。
咱们看到Go经过简单的几行代码就已经运行起来一个Web服务了,并且这个Web服务内部有支持高并发的特性。并发

相关文章
相关标签/搜索