Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah saya boleh menghantar keseluruhan rentetan json ke medan struktur bersarang apabila unmarshalling?
Dalam PHP, apabila kita perlu menghantar keseluruhan rentetan JSON ke medan struktur bersarang, terdapat cara mudah untuk melakukannya. Pertama, kita perlu memastikan kita telah menyahkod rentetan JSON ke dalam tatasusunan atau objek PHP. Kemudian kita boleh menggunakan fungsi json_encode() untuk mengekod tatasusunan atau objek yang dinyahkodkan ke dalam rentetan JSON sekali lagi. Seterusnya, kita boleh menetapkan rentetan JSON yang dikodkan kepada medan sasaran. Dengan cara ini, kami telah berjaya menghantar keseluruhan rentetan JSON ke medan struktur bersarang. Ini ialah kaedah yang mudah tetapi berkesan yang membolehkan kami memproses data JSON dalam PHP dengan mudah.
Saya perlu membongkar rentetan json yang rata
data := `{"login":"Nickname","password":"some_pass","newPassword":"new_pass"}`
Masukkan UpdatePasswordRequest
struktur bersarang:
type SignInRequest struct { Login string `json:"login"` Password string `json:"password"` } type UpdatePasswordRequest struct { NewPassword string `json:"newPassword"` SignInData SignInRequest `<tag>` }
Gunakan semua yang mungkin 8bf259f5a6144433b921fb8b7de94970
值将 data
解组到 result
var result UpdatePasswordRequest json.Unmarshal([]byte(data), &result)
memberi kosong Login
和 Password
:
result.SignInData.Login = "" result.SignInData.Password = ""
Bagaimanakah saya harus mentakrifkan 8bf259f5a6144433b921fb8b7de94970
untuk mendapatkan nilai yang betul untuk medan 8bf259f5a6144433b921fb8b7de94970
以获得 Login
和 Password
字段的正确值?
如果您要使用 8bf259f5a6144433b921fb8b7de94970
?
Penyelesaian
🎜Jika anda akan menggunakan nama8bf259f5a6144433b921fb8b7de94970
, json anda hendaklah bersarang, bukan rata, seperti ini: 🎜
data := `{"newPassword":"new_pass", "myTag":{"password":"some_pass", "login":"Nickname"}}`🎜Jika anda tidak boleh menukar json anda, ia harus menyusun struktur (aka .struct embedding) seperti ini: 🎜
type SignInRequest struct { Login string `json:"login"` Password string `json:"password"` } type UpdatePasswordRequest struct { NewPassword string `json:"newPassword"` SignInRequest }
Atas ialah kandungan terperinci Bagaimanakah saya boleh menghantar keseluruhan rentetan json ke medan struktur bersarang apabila unmarshalling?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!