Rumah > pembangunan bahagian belakang > Golang > Golang multiple json

Golang multiple json

PHPz
Lepaskan: 2024-02-09 10:42:09
ke hadapan
943 orang telah melayarinya

Golang 多个 json

editor php Banana akan memperkenalkan kepada anda cara memproses berbilang JSON di Golang. Di Golang, kita selalunya perlu mengendalikan berbilang objek JSON Sebagai contoh, data yang diperoleh daripada antara muka API mungkin tatasusunan JSON. Untuk memudahkan pengendalian situasi ini, kami boleh menggunakan pakej JSON Golang untuk menghuraikan dan memproses berbilang objek JSON. Menggunakan pakej JSON, kami boleh menghuraikan data JSON ke dalam struktur dalam Golang, dan kemudian mengendalikan dan memproses struktur. Dengan cara ini, kita boleh mengendalikan berbilang objek JSON dengan mudah. Sudah tentu, kami juga boleh menggunakan beberapa perpustakaan pihak ketiga, seperti GJSON, untuk memproses berbilang objek JSON dengan lebih fleksibel dan cekap. Secara umum, Golang menyediakan pelbagai cara untuk memproses berbilang objek JSON dan pembangun boleh memilih kaedah yang sesuai mengikut keperluan mereka sendiri.

Kandungan soalan

Saya mempunyai json yang dihantar kepada pelanggan, ia mempunyai 2 varian, semua bezanya adalah nama medan push/pull, bagaimana saya boleh melakukan ini tanpa menduplikasi tag struct untuk satu

"message": "Project updated successfully.",
        "data": {
            "push": {
                "projects": [
                    {
                        "name": "test",
                        "summary": "nn",
                    
                    }
                ],
                "events": []
            }
        }
    }
    "message": "Project updated successfully.",
        "data": {
            "pull": {
                "projects": [
                    {
                        "name": "test",
                        "summary": "nn",
                    
                    }
                ],
                "events": []
            }
        }
    }
Salin selepas log masuk

`

Saya sedang berfikir untuk membuat antara muka medan tarikh dan menggantikan struktur yang berbeza

Penyelesaian

Hanya tentukan satu jenis dengan medan Tolak dan Tarik:

type A struct {
    Message string `json:"message"`
    Data    struct {
        Push *B `json:"push,omitempty"`
        Pull *B `json:"pull,omitempty"`
    } `json:"data"`
}

type B struct {
    Projects []struct {
        Name    string `json:"name"`
        Summary string `json:"summary"`
    } `json:"projects"`
    Events []interface{} `json:"events"`
}
Salin selepas log masuk

Semak sifar selepas penyahkodan untuk menentukan jenis acara yang diwakilinya.

Atas ialah kandungan terperinci Golang multiple json. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan