色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

go http請求 json

江奕云2年前8瀏覽0評論

Go語言是一種非常適合處理HTTP請求的語言,它內置了很多與網絡相關的包,其中最常用的就是net/http包。該包支持了所有標準的HTTP請求方法,包括GET、POST、PUT、PATCH、DELETE等,而且在處理JSON數據時也有非常方便的api。

在進行HTTP請求時需要創建一個http.Client,然后調用它的Do方法,可以將請求的結果保存在http.Response結構中。如果請求成功,我們可以在Response結構中獲取到響應的JSON數據,然后使用encoding/json包里的Unmarshal方法將其解析成程序中的數據結構。

package main
import (
"encoding/json"
"fmt"
"net/http"
)
type User struct {
ID       int    `json:"id"`
Name     string `json:"name"`
Username string `json:"username"`
}
func main() {
res, err := http.Get("https://jsonplaceholder.typicode.com/users/1")
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
var user User
err = json.NewDecoder(res.Body).Decode(&user)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("ID: %d\nName: %s\nUsername: %s\n", user.ID, user.Name, user.Username)
}

在上面的例子中,我們使用了第三方的API接口,從網絡上獲得了一個用戶的JSON數據。然后定義了一個User結構,該結構中與JSON數據對應的字段用json標簽來注釋,然后使用http.Get方法發送請求,并將響應保存在http.Response結構中。最后創建了一個User類型的變量,然后使用Unmarshal方法從Response結構中獲取JSON數據并解析到程序中的數據結構中。最終打印了用戶的信息。