Saya dapat secara manual menentukan jenis BSON di Driver NodeJS mongodb? Saya mendapatkan kesalahan jika saya menggunakan "$ numberLong"
Aug 18 2020
Ini adalah Bagaimana saya membingkai objek dokumen sebelum memasukkannya ke koleksi
function newTupple(name, email){
return {
email:email,
name:name,
account_status:{
email_verified:{ //I want this in Int64
"$numberLong": `${Date.now()}`
},
activated:false
}
}
}
Lalu saya sisipkan seperti
const new_doc = newTupple("Ninja", "[email protected]")
collection.insertOne(new_doc, (err, result)=>{
if(err){
//err: returns " key $numberLong must not start with '$' "
}
}
Saya menggunakan paket npm [email protected]
Apa yang saya lakukan salah? Atau apakah tipe data khusus tidak tersedia untuk JS?
......................................
Memperbarui
......................................
Log Kesalahan Penuh
Error: key $numberLong must not start with '$'
at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:915:19)
at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:941:17)
at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:941:17)
at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:727:17)
at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:941:17)
at BSON.serialize (--------------\node_modules\bson\lib\bson\bson.js:64:28)
Jawaban
1 D.SM Aug 18 2020 at 17:24
Anda menggunakan sintaks json diperpanjang yang tidak sesuai untuk membuat grafik objek dalam aplikasi. Sebaliknya Anda harus membangun objek dengan tipe yang sesuai.
Misalnya lihat di sini untuk contoh Panjang.
const BSON = require('bson');
const Long = BSON.Long;
const doc = { long: Long.fromNumber(100) };
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'