• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

go实现简单的httpweb服务

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
package main

import (
	"fmt"
	"net/http"
)

func hello(w http.ResponseWriter, r *http.Request) {
	fmt.Println("handle hello")
	fmt.Fprintf(w, "hello12345")
}

func index (w http.ResponseWriter, r *http.Request) {
	//Fprintf根据format参数生成格式化的字符串并写入w。返回写入的字节数和遇到的任何错误
	fmt.Fprintf(w, "this is index")
}

func main () {
	//HandleFunc注册一个处理器函数handler和对应的模式pattern
	//实现路由功能, hello 为函数名
	http.HandleFunc("/", hello)
	http.HandleFunc("/index", index)
	//ListenAndServe监听srv.Addr指定的TCP地址,并且会调用Serve方法接收到的连接。如果srv.Addr为空字符串,会使用":http"。
	err := http.ListenAndServe("0.0.0.0:8080", nil)

	if err != nil {
		fmt.Println("http listen failed")
	}

}

  2.客户端

  

//http 客户端
package main

import (
	"fmt"
	"net/http"
	"io/ioutil"
)

func main () {
	res, err := http.Get("http://www.baidu.com")
	if err != nil {
		fmt.Println("get faield,error:,", err)
		return 
	}

	data, err := ioutil.ReadAll(res.Body)

	if err != nil {
		fmt.Println("read err, error:,", err)
		return
	}

	fmt.Println(string(data))
}

  3. head请求

  

//head请求实例子
package main

import (
	"fmt"
	"net/http"
	"time"
	"net"
)

var url = []string{
	"http://www.baidu.com",
	"http://www.gegole.com",
	"http://www.taobao.com",
}

func main () {
	for _, v := range url {
		//自己建立客户端
		client := http.Client{
			Transport: &http.Transport {
				Dial: func(network, addr string) (net.Conn, error) {
					//设置超时时间
					timeout := 2 * time.Second
					return net.DialTimeout(network, addr, timeout)
				}, 
			},
		}

		resp, err := client.Head(v)

		if err != nil {
			fmt.Println("send head failed, error:", err)
			continue
		}

		fmt.Printf("head succ, status: %v \n", resp.Status)

	}
}

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Go语言fmt包详解发布时间:2022-07-10
下一篇:
【转】go解析16进制字符串中的bit,byte.发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap