Saya sedang menulis aplikasi yang relatif baru dan bertanya-tanya mana yang harus saya gunakan:
express.json()
atau
bodyParser.json()
Dapatkah saya berasumsi bahwa mereka melakukan hal yang sama.
Saya hanya ingin menggunakan express.json()
karena sudah terpasang.
Jawaban:
Versi Express sebelumnya biasanya memiliki banyak middleware yang disertakan dengannya. bodyParser adalah salah satu middlewares yang membuatnya. Ketika Express 4.0 dirilis, mereka memutuskan untuk menghapus middleware yang dibundel dari Express dan menjadikannya sebagai paket terpisah. Sintaksnya kemudian diubah dari
app.use(express.json())
menjadiapp.use(bodyParser.json())
setelah menginstal modul bodyParser.bodyParser ditambahkan kembali ke Express pada rilis 4.16.0, karena orang menginginkannya dibundel dengan Express seperti sebelumnya. Itu berarti Anda tidak perlu menggunakan
bodyParser.json()
lagi jika Anda menggunakan rilis terbaru. Anda bisa menggunakanexpress.json()
sebagai gantinya.Sejarah rilis untuk 4.16.0 ada di sini untuk mereka yang tertarik, dan pull request ada di sini .
sumber
app.use(express.urlencoded({ extended: true }));
?IYA! Benar
sumber
Ya keduanya sama.
jika Anda masuk ke file node_module / express / lib / express.js
Anda dapat melihat di bawah modul dependensi body parser module sudah diimpor
objek dan metode di dalam modul bodyparser dapat diakses saat diekspor menggunakan modul objek khusus.exports
ini dapat diakses dari objek ekspres hanya dengan memanggil
sumber
Iya!! Karena opini luas dari orang-orang untuk mengintegrasikan body-parser kembali dengan express, rilis terbaru melakukan hal ini. Anda seharusnya benar menganggap bahwa keduanya melakukan tugas yang sama, yaitu mengenali objek permintaan yang masuk sebagai objek JSON. Jangan ragu untuk menggunakan keduanya.
sumber