Saya sudah bolak-balik ~ 5 kali sudah. Titik akhir REST ini /api/tags/
akan untuk penggunaan internal (tidak ada klien pihak ke-3), saya satu-satunya yang bekerja dengannya.
Saya memutuskan antara dua representasi ini:
Datar
{
"types":[
{
"id":1,
"text":"Utility"
},
{
"id":7,
"text":"Lease Terms"
},
],
"tags":[
{
"id":8,
"text":"Water",
"type":1
},
{
"id":9,
"text":"Electricity",
"type":1
},
{
"id":5,
"text":"Minimum 12 month lease",
"type":7
},
{
"id":17,
"text":"lease negotiable/flexible",
"type":7
},
]
}
- Ini agak modular. Dapat menambahkan lapisan teratas lain seperti "negara" tanpa merusak kompatibilitas.
Bersarang
{
"1":{
"text":"Utility",
"tags":{
"8":{
"text":"Water"
},
"9":{
"text":"Electricity"
},
}
},
"2":{
"text":"Lease Terms",
"tags":{
"5":{
"text":"Minimum 12 month lease"
},
"17":{
"text":"lease negotiable/flexible"
},
}
},
}
- Sudah dalam format yang dapat digunakan. Tidak perlu mengulang-ulang data sebelum menggunakannya.
- Menghemat bandwidth. Bahkan setelah gzip, ini sedikit lebih kecil.
Yang mana yang harus digunakan, dan mengapa? Jika ini adalah masalah preferensi pribadi, representasi mana yang akan disukai pengembang dan mengapa?
Is this a matter of personal preference?
. Aku pikir begitu. Persyaratan> kebutuhan> preferensi