golang学习第一波,使用http get请求高德天气接口。
一、准备内容:
1、注册高德开发者账号,申请key
2、golang开发工具LiteIDE(可自行百度)。
3、大致了解下golang基础语法。
二、直接上代码
因为代码注释非常详尽,故直接上代码。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
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。供测试使用
返回结果:
测试结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.jianshu.com/p/0861f57f5dd1