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

go語言 解析json返回值

錢淋西2年前8瀏覽0評論

Json(JavaScript Object Notation) 是一種用于交換數據的輕量級、基于文本的數據交換格式。它可以通過鍵值對的形式來表示數據,其中鍵值對之間用逗號分隔,鍵和值之間用冒號分隔。在go語言中,我們可以使用標準庫中的json包來解析json返回值。

import "encoding/json"
type User struct {
Name     string `json:"name"`
Age      int    `json:"age"`
Email    string `json:"email"`
Password string `json:"password"`
}
func main() {
jsonStr := `{ "name": "John Doe", "age": 30, "email": "johndoe@example.com", "password": "$2y$12$o9/xd2/lZavB99FllUbZPewLekzIPQEHtHhVvzK0xdDpvOj7iwwCC" }`
var user User
err := json.Unmarshal([]byte(jsonStr), &user)
if err != nil {
panic(err)
}
fmt.Printf("%v\n", user) // {John Doe 30 johndoe@example.com $2y$12$o9/xd2/lZavB99FllUbZPewLekzIPQEHtHhVvzK0xdDpvOj7iwwCC}
}

在以上的代碼中,我們定義了一個結構體User來表示json返回值中的數據。通過設置結構體中各個字段的"json"標簽,我們可以在解析json返回值時將其映射到對應的字段中。

type User struct {
Name     string `json:"name"`
Age      int    `json:"age"`
Email    string `json:"email"`
Password string `json:"password"`
}

在main函數中,我們首先定義了一個json字符串,并將其轉換為[]byte類型。之后,我們定義了一個User類型的變量,并調用json.Unmarshal函數來解析json返回值。該函數的第一個參數是一個[]byte類型的json字符串,第二個參數是一個指向User類型變量的指針。如果解析成功,函數將該json字符串的鍵值對映射到User類型變量中,否則會返回一個非nil的錯誤值。

var user User
err := json.Unmarshal([]byte(jsonStr), &user)
if err != nil {
panic(err)
}
fmt.Printf("%v\n", user) // {John Doe 30 johndoe@example.com $2y$12$o9/xd2/lZavB99FllUbZPewLekzIPQEHtHhVvzK0xdDpvOj7iwwCC}

最后,我們可以打印出解析后的User類型變量,以確認解析是否成功。