ZQ博客

ZQ博客
学无止境-技术在于分享
  1. 首页
  2. 技术分享
  3. 正文

Go语言编写第一个web程序

2021年 1月 26日 2251点热度 0人点赞 0条评论

Web应用基于http协议,Go语言里面提供了一个完善的net/http包,通过http包可以很方便的就搭建起来一个可以运行的Web服务。同时使用这个包能很简单地对Web的路由,静态文件,模版,cookie等数据进行设置和操作。

1、编写代码

vim web.go

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, "

你好,世界!

!") //输出到客户端的信息 } func main() { http.HandleFunc("/", sayhelloName) //设置访问的路由 err := http.ListenAndServe(":9090", nil) //设置监听的端口 if err != nil { log.Fatal("ListenAndServe: ", err) } }

2、运行程序

$ go run web.go

3、测试访问

不带参数访问

http://localhost:9090/

或者带参数访问

http://localhost:9090/?username=zhangsan

命令行测试

另外开一个命令行窗口运行

$ curl http://localhost:9090/

4.4、生成二进制

$ go build web.go 
$ ls
web    web.go
$ ./web 
标签: go go语言 web
最后更新:2022年 8月 11日

zq

每天进步一点, 时间长了你会发现已经走了很远了

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复
分类
  • ARM
  • Docker
  • java
  • Linux
  • OpenStack问题
  • springboot
  • SpringCloud
  • 前端开发
  • 技术分享
  • 数据库
  • 未分类
  • 版本控制
文章目录
  • 1、编写代码
  • 你好,世界!
  • 2、运行程序
  • 3、测试访问
    • 4.4、生成二进制

COPYRIGHT ©2024 www.dowhere.com ALL RIGHTS RESERVED.and Theme Kratos