有遇到这种需求,golang发送GET请求,携带header头信息,比如header里带着验证token
封装函数如下:
//Get请求携带header
func GetWithHeader(url string, headers map[string]string) (string, error) {
client := &http.Client{}
req, err := http.NewRequest("GET", url, nil)
if err != nil {
return "", err
}
for key, header := range headers {
req.Header.Set(key, header)
}
resp, err := client.Do(req)
if err != nil {
return "", err
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return "", err
}
return string(body), nil
}
使用方式如下:
token := "aaaddddffffffffffffsssssssssss"
id := 222
headers := make(map[string]string)
headers["Authorization"] = "bearer " + token
result, _ := tools.GetWithHeader("/url?id="+id, headers)
开发作品
GOFLY是一款基于Golang+Vue开发的在线客服系统,软件著作权编号:2021SR1462600。一套可私有化部署的在线客服系统,编译后的二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的网页在线客服系统,致力于帮助广大开发者/中小站长快速整合私有客服功能。
github地址:go-fly