热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

golang简单web服务

1.golangprint输入packagemainimportfmtfuncmain(){fmt.Printf(HelloWorld!\n)}执行如下命令gobui

1.golang print输入

package main

import "fmt"

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

执行如下命令
go build print.go

 

2. go web 服务端

Go语言标准库 - net/http

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

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,

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

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

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

 


推荐阅读
author-avatar
艺维网络传媒
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有