Bekerja dengan JSON di Golang. Kelola data JSON dengan Go | Oleh Pavle Djuric | Juni 2022

Programming

[ad_1]
Hai Teman-teman di suratpembaca.web.id. Dalam kesempatan ini kita akan membicarakan tentang Linux yakni Bekerja dengan JSON di Golang. Kelola data JSON dengan Go | Oleh Pavle Djuric | Juni 2022

.

Semoga artikel mengenai Bekerja dengan JSON di Golang. Kelola data JSON dengan Go | Oleh Pavle Djuric | Juni 2022

dapat memberikan manfaat bagi Teman-teman semua. Langsung saja baca postingan ini
sampai selesai.

Mengelola data JSON dengan Go

Membuatnya mudah dan efisien bagi pengembang layanan web yang skalabel dan berkinerja tinggi adalah salah satu nilai jual terbaik Golang.

Seperti yang kita ketahui, JSON adalah standar industri untuk serialisasi data saat berkomunikasi dengan layanan web yang menghadap pengguna. Untungnya, Go memungkinkan Anda bekerja dengan JSON dengan cara yang sangat sederhana dan produktif. Dalam artikel ini saya akan mengatakan:

  • Tunjukkan cara bekerja dengan modul JSON yang ada di perpustakaan standar Go
  • Tunjukkan cara mengonversi data JSON ke objek Go dan sebaliknya
  • Bicara tentang alat rapi yang dapat mempercepat proses bekerja dengan JSON

Go memiliki perpustakaan standar yang sangat kuat. Kita tidak perlu mengambil perpustakaan pihak ketiga untuk bekerja dengan data JSON, karena perpustakaan internal memiliki semua kebutuhan kita.

Mari kita lihat cuplikan kode yang melakukan manipulasi dasar dengan JSON:

Ini adalah contoh yang sangat mendasar, di mana kami mengambil sepotong struktur Go (dalam hal ini buku) dan membuat serial dalam format JSON sehingga kami dapat mengirimkannya secara nirkabel ke klien yang meminta data ini.

Salah satu hal pertama yang mungkin Anda perhatikan adalah bagaimana bidang struktur Buku didefinisikan. Setiap atribut dari struktur kami menentukan bagaimana itu harus direpresentasikan dalam backticks saat diserialkan ke JSON (json:”title”).

Ini adalah fitur Go yang sangat berguna yang dapat Anda uji dengan mudah dengan mengubah title Ke book_title. Ini bisa sangat berguna ketika Anda perlu mengubah format respons JSON Anda di REST API.

Sekarang mari kita lihat cara kita mengonversi data – metode Marshall menempatkan antarmuka kosong (artinya Anda benar-benar dapat memindahkan struktur data Go apa pun yang Anda suka) dan mencoba membuat serial data . Jika gagal, Anda akan mendapatkan kesalahan. Itu sebabnya memeriksa kesalahan sangat penting. Jika serialisasi berhasil, ia mengembalikan sepotong byte untuk transmisi melalui jaringan.

Mari kita lihat situasi sebaliknya, aliran data JSON sedang diterima dan perlu dikonversi ke struktur data Go agar aplikasi Go dapat memanipulasi data:

Jelas, kita hampir membalikkan proses di sini, tetapi ada satu hal penting yang perlu diperhatikan – saat memisahkan data, kita harus melewatkan pointer melalui pemotongan. Book Struktur, bukan pemotongan sebenarnya. Ini karena Go, tidak seperti Java atau Python, adalah bahasa dengan nilai pass. Ini berarti bahwa jika kita ingin mengubah status suatu variabel, kita harus menggunakan penunjuknya, jika tidak, hanya salinan variabel tersebut yang akan diteruskan dan status variabel asli tidak akan berubah.

Selain itu json.Marshal/json.Unmarshal Metode yang digunakan dalam contoh ini adalah metode lain dari serialisasi JSON menggunakan json.Decoder/json.Encoder.

Perbedaan utamanya adalah keduanya berharap untuk membaca dari struktur Go yang mengimplementasikan ini io.Reader Penyambung. Badan permintaan dari permintaan HTTP yang masuk adalah salah satunya. Tanpa membangun seluruh server HTTP, mari kita lihat situasi di mana kami menerima permintaan klien HTTP untuk menambahkan buku baru ke koleksi kami:

Oleh karena itu, saat menerapkan penangan permintaan HTTP, gunakan json.NewDecoder/json.NewEncoder Ini bisa lebih logis untuk digunakan json.Marshal/json.UnMarshal.

Sekarang, bekerja dengan contoh-contoh sederhana ini adalah satu hal, tetapi bagaimana dengan situasi kehidupan nyata di mana permintaan/tanggapan JSON biasanya merupakan struktur besar yang penuh dengan objek bersarang? Implementasinya masih hampir sama, hanya saja definisi struktur Go dapat dengan mudah berubah menjadi sakit kepala. Setelah menulis struktur secara manual beberapa kali, saya menemukan alat yang sangat berguna untuk melakukan ini secara otomatis. Anda dapat menemukannya di sini.

Mari kita lihat contoh API Rick and Morty. Anda dapat melihat respons HTTP dengan menelepon:

https://rickandmortyapi.com/api/character/418

Saat Anda memasukkan jawabannya ke alat JSON-to-Go, Anda mendapatkan:

Konversi yang sangat cepat! Tidak perlu mengetikkan struktur secara manual, dan mencari tahu objek JSON bersarang mana yang harus dikonversi ke struktur Go mana.

Tunggu dulu, Anda bilang Anda tidak benar-benar membutuhkan struktur Go, tapi lebih suka peta Go? Jangan khawatir, Anda dapat dengan mudah melakukan konversi di sini:

Itu saja untuk artikel ini. Saya harap itu berguna. Terima kasih sudah membaca!

Itu tadi postingan tentang Bekerja dengan JSON di Golang. Kelola data JSON dengan Go | Oleh Pavle Djuric | Juni 2022

, terimakasih telah berkunjung di website saya, mudah-mudahan informasinya ada manfaatnya ya.

[ad_2]

Source link

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan.