golang学习第一波,使用http get请求高德天气接口。
一、准备内容:
1、注册高德开发者账号,申请key
2、golang开发工具LiteIDE(可自行百度)。
或者https://www.jb51.net/softjc/119086.html
3、大致了解下golang基础语法。
二、直接上代码
因为代码注释非常详尽,故直接上代码。
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
rlt, err := doHttpGetRequest("https://restapi.amap.com/v3/weather/weatherInfo?key=你的高德key&city=110101")
if err != nil {
fmt.Println("net req error")
} else {
fmt.Println(rlt)
}
}
// 自定义http get请求函数
// 入参:请求url
// 返回值:rlt,天气数据。err,错误信息
// 网络请求
func doHttpGetRequest(url string) (rlt string, err error) {
// http.Get在net/http中,所以要import "net/http"
resp, err := http.Get(url)
if err != nil {
return "", err
} else {
// 使用efer resp.Body.Close()。当doHttpGetRequest成功return之后,执行此行语句。多用于句柄关闭
defer resp.Body.Close()
// io流数据读取。需要引用io/ioutil
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return "", err
} else {
return string(body), err
}
}
}
注:我的高德key:d2315f3b0b4e57bbf5428e755a73e692。供测试使用
返回结果:

测试结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)