MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Urutkan Kunci dalam Objek Respons dari Mongoose di ExpressJS dan NodeJS

res.send Ekspres' metode mengakui bahwa artist adalah Object, dan memanggil JSON.stringify di atasnya untuk mengonversi Objek menjadi string JSON sebelum mengirim. Sederhanakan sedikit, JSON.stringify metode diulang melalui artist Anda kunci objek dalam urutan mereka dibuat. (Berikut ini tautan ke penjelasan pemesanan yang lebih rumit. ) Itu menjelaskan perilaku saat ini.

Orang lain mungkin setuju dengan proposal mereka sendiri tentang bagaimana Anda dapat melakukan apa yang Anda tuju, tetapi berikut ini yang sederhana untuk dicoba terlebih dahulu:

  • Pertama, lakukan sendiri JSON.stringify , menggunakan "pengganti" untuk membuat urutan keluaran yang Anda inginkan :

    const artistString = JSON.stringify(artist, ["realName", "stageName", ...])
    // '{"realName": "Paul David Hewson", "stageName": "Bono", ...}'
    
  • Kemudian, gunakan res.json(artistString) , daripada res.send , untuk mengirim string JSON Anda dengan Content-Type yang benar kepala. (res.send akan menganggap Anda inginContent-Type: “text/html” .)

Pasti ada pendekatan yang lebih rumit, termasuk membuat fungsi yang mendapatkan kunci, mengurutkannya, dan mengembalikan pengganti; atau tulis sendiri .toJSON() pengganti JSON.stringify . Anda mungkin perlu menerapkan salah satu dari pendekatan ini, karena Anda memiliki objek bersarang; perilaku pengganti bisa sedikit miring dalam hal ini . Anda mungkin dapat membuat daftar properti bersarang segera setelah induknya, seperti:

["realName", "type", ...]

tetapi karena Anda memiliki nama yang sama untuk beberapa properti bersarang, ini mungkin berhasil atau tidak untuk Anda. Anda mungkin harus mengencangkan bagian dalam sebelum mengencangkan bagian luar (gah!).

Bagaimanapun, semoga saran saya bisa menjadi langkah awal.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana Mengonfigurasi AppArmor untuk Kumpulan Replika MongoDB?

  2. Pymongo/bson:Mengonversi objek python.cursor.Cursor menjadi objek serializable/JSON

  3. Bagaimana cara menggunakan pymongo untuk terhubung ke koleksi/db dokumen yang ada?

  4. PyMongo berperilaku buruk dengan angka floating point

  5. Mengonversi ObjectId Tipe BSON ke JSON (Menyimpan di Mongodb) -Java