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