为了账号安全,请及时绑定邮箱和手机立即绑定
首页 手记 【九月打卡】第15天 go语言http标准库

【九月打卡】第15天 go语言http标准库

2022.09.19 23:24 33浏览

课程名称GO开发工程师

课程章节:8-1: http标准库

课程讲师ccmouse

课程内容

  1. http作为客户端发起请求
// 创建一个request
request, err := http.NewRequest(http.MethodGet, "http://www.imooc.com", nil)

// 设置请求头部
// 设置 user-agent后,会访问手机版网页
request.Header.Add("User-Agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Mobile Safari/537.36")

client := http.Client {
	// 所有得重定向都存放进了via
	CheckRedirect: func(req *http.Request, via []*http.Request) error {
		fmt.Println("redirect: ", req)
		return nil // 返回nil 终止继续重定向;不返回nil将一直重定向下去
	}
}
resp, err := client.do(request)

// resp, err := http.DefaultClient.do(request)

//resp, err := http.Get("www.imooc.com")
if err != nil {
	panic(err)
}
defer resp.Body.Close()
// true: dump resp body
s, err := httputil.DumpResponse(resp, true)
if err != nil {
	panic(err)
}
fmt.Printf("%s\n", s)
  1. http服务器得性能分析
    导入 _ "net/http/pprof"
    访问/debug/pprof/
    使用go tool pprof分析性能
    调用栈、内存占用情况、go routine等

课程收获

  • 使用httputil简化工作,可以手动设置请求头头部
  • 服务器性能分析方式

图片描述
图片描述

点击查看更多内容
Go
0人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
手记
粉丝
0
获赞与收藏
0

关注TA,一起探索更多经验知识

同主题相似文章浏览排行榜

风间影月说签约讲师

50篇手记,涉及Java、MySQL、Redis、Spring等方向

进入讨论

Tony Bai 说签约讲师

146篇手记,涉及Go、C、Java、Python等方向

进入讨论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消