Bagaimana untuk Menggunakan Middleware Body-parser dalam Node.js?

Bagaimana Untuk Menggunakan Middleware Body Parser Dalam Node Js



Semasa berurusan dengan permintaan HTTP POST, teknik 'penghuraian badan' memainkan peranan penting dalam mengendalikan badan mereka. Ia membolehkan pengguna menghuraikan badan permintaan masuk untuk mengubah suainya mengikut keperluan. Teknik ini menghuraikan isi permintaan rentetan ke dalam objek JSON JavaScript yang boleh digunakan dalam aplikasi Node.js.

Rangka Pantas

Mari mulakan dengan asas perisian tengah dalam Node.js.







Apakah Middleware dalam Node.js?

Middleware ialah fungsi yang memberikan akses untuk meminta objek, bertindak balas kepada objek, dan melaksanakan fungsi secara berurutan dengan bergerak ke arah fungsi middleware seterusnya dalam kitaran permintaan-tindak balas aplikasi. Ia juga menyediakan akses untuk mengubah suai objek permintaan dan respons untuk melaksanakan operasi seperti pengesahan, menghuraikan badan yang meminta dan banyak lagi.



Apakah itu Body-Parser Middleware dalam Node.js?

' penghurai badan ” ialah perisian tengah penghuraian badan yang mengurus permintaan HTTP POST. Permintaan 'POST' menghantar data ke pelayan untuk mencipta atau mengubah suai sumber. Perisian tengah 'bode-parser' menghuraikan badan permintaan masuk sebagai objek JavaScript (jika jenis kandungan aplikasi ialah JSON) dan Borang HTML (jika jenis MIME adalah application/x-www-form-urlencoded ). Sebaik sahaja ia selesai, maka itu boleh digunakan dalam aplikasi.



Selepas mendapat asas perisian tengah penghurai badan, mari beralih kepada penggunaannya.





Bagaimana untuk Menggunakan Middleware Body-parser dalam Node.js?

Untuk menggunakan perisian tengah parser badan dalam Node.js ikuti langkah arahan di bawah:

Mari mulakan dengan pemulaan projek Node.js.



Langkah 1: Mulakan Projek Node.js

Mula-mula, Mulakan projek Node.js dengan melaksanakan “ yang dinyatakan di bawah npm (pengurus pakej nod)” arahan permulaan:

npm init - dan

Dalam arahan di atas, ' -dan' bendera digunakan untuk menjawab semua pertanyaan 'ya'.

Output menunjukkan bahawa ' package.json ” fail berjaya dibuat yang mengandungi set sifat berikut:

Langkah 2: Pasang Penghurai Badan

Seterusnya, pasangkan pakej body-parser ke dalam aplikasi Node.js semasa dengan melaksanakan “ yang dinyatakan di bawah npm ” arahan pemasangan:

npm pasang badan - penghurai

Output di bawah menunjukkan bahawa pakej body-parser telah berjaya dipasang dalam aplikasi Node.js yang diberikan:

Langkah 3: Pasang Express dan EJS

Sekarang, pasang ' bukan (Templat JavaScript Terbenam)” dalam aplikasi Node.js. 'ejs' ialah enjin JavaScript terkenal yang digunakan oleh Node.js yang mengambil data HTML sebagai Javascript biasa:

npm pasang ejs

Dapat diperhatikan bahawa perpustakaan 'ejs' telah ditambahkan pada aplikasi Node.js semasa:

Di samping itu, pasang ' ekspres ” rangka kerja web untuk membina aplikasi Node.js dengan cepat dan mudah:

npm pasang ekspres

'ekspres' juga telah ditambahkan pada aplikasi Node.js:

Langkah 4: Cipta Templat EJS

Setelah semua pakej yang diperlukan telah dipasang, buat templat 'ejs' yang mempunyai baris kod berikut dan simpannya sebagai ' SampleForm.ejs ” fail:

DOCTYPE html >
< html >
< kepala >
< tajuk > Badan - Penghurai Middleware tajuk >
kepala >

< badan >
< pusat >
< h1 > Contoh Diari h1 >
< tindakan bentuk = 'simpan data' kaedah = 'POST' >
< pra >
< label > Tajuk : label >< jenis input = 'teks' nama = 'tajuk' > < br >
< label > Tarikh label >< jenis input = 'Tarikh' nama = 'Tarikh' >< br >
< label > Tarikh label >< jenis input = 'Tarikh' nama = 'Tarikh' >< br >
< jenis input = 'serahkan' nilai = 'Serahkan Diari' >< br >
pra >

bentuk >
pusat >
badan >
html >

Penjelasan kod di atas adalah seperti berikut:

  • ' teg ” menentukan tajuk dokumen HTMl.
  • ' teg ” menjajarkan kandungan di tengah halaman web.
  • '

    teg ” memasukkan elemen tajuk peringkat pertama.

  • ' tag ” mencipta elemen borang yang mengumpul maklumat daripada pengguna. Di dalam elemen 'bentuk' terdapat ' tindakan atribut ” menentukan tindakan yang dilakukan pada penyerahan borang dan “ kaedah atribut ” yang mempunyai nilai “post” menghantar data ke pelayan.
  • ' teg ” memaparkan elemen yang ditentukan pada halaman yang mempunyai lebar fon tetap sama seperti dalam kod sumber.
  • ' teg ” menentukan label medan input.
  • ' ” type menambah medan input jenis “ teks 'dan nama' tajuk ”.
  • Dua teg ' ' seterusnya menambah medan input jenis dan nama yang ditentukan.

Langkah 5: Gunakan Body Parser Middleware

Sekarang buat fail '.js' bernama ' index.js ” dan gunakan perisian tengah penghurai badan di dalamnya untuk menghuraikan badan semua permintaan masuk. Apabila fail '.js' dibuat, salin baris kod berikut di dalamnya:

const bodyparser = memerlukan ( 'penghuraikan badan' )
const ekspres = memerlukan ( 'ekspres' )
const laluan = memerlukan ( 'jalan' )
const aplikasi = ekspres ( )
biarkan PORT = proses. env . pelabuhan || 8080
aplikasi. ditetapkan ( 'pandangan' , laluan. sertai ( __nama nama ) )
aplikasi. ditetapkan ( 'lihat enjin' , 'tidak' )
aplikasi. guna ( bodyparser. urlencoded ( { dipanjangkan : benar } ) )
aplikasi. guna ( bodyparser. json ( ) )
aplikasi. dapatkan ( '/' , fungsi ( req, res ) {
semula render ( 'Borang Contoh' )
} ) ;
aplikasi. jawatan ( '/simpan data' , ( req, res ) => {
konsol. log ( 'Menggunakan Body-parser: ' , req. badan )
} )
aplikasi. dengar ( PORT, fungsi ( ralat ) {
jika ( ralat ) melontar ralat
konsol. log ( 'Pelayan Dicipta pada PORT' , PELABUHAN )
} )

Penjelasan baris kod yang dinyatakan di atas ditulis di bawah:

  • Pertama, ' memerlukan() ' kaedah mengimport modul 'penghurai badan', 'ekspres' dan 'laluan' dalam aplikasi Node.js semasa.
  • Seterusnya, buat contoh aplikasi ekspres dengan bantuan ' ekspres() ” pembina.
  • Selepas itu, ' proses.env ” property melaksanakan pelayan tempatan secara lalai “ PELABUHAN ”. Jika port lalai sibuk maka pelayan akan melaksanakan pada port yang ditentukan iaitu “ 8080 ”.
  • Sekarang sediakan enjin paparan dengan bantuan perisian tengah yang ditentukan di mana 'pandangan' menandakan folder tempat semua halaman web disimpan dan ' path.join() ” kaedah menyertai segmen laluan direktori semasa dan mencipta satu laluan.
  • Setelah semuanya selesai, ' app.use() ' kaedah meletakkan yang ditentukan ' penghurai badan ” middleware di laluan yang diberikan. Perisian tengah penghurai badan ini menggunakan ' urlencoded ” penghurai yang hanya menghuraikan badan 'urlencoded' yang pengepala 'jenis kandungan' sepadan dengan pilihan 'jenis'.
  • 'penghuraikan badan' kedua menggunakan ' JSON ” parser untuk menghuraikan badan permintaan masuk sebagai objek JSON dalam format nilai kunci.
  • ' app.get() ” kaedah menghantar permintaan HTTP “GET” pada laluan yang ditentukan dan melaksanakan fungsi panggil balik yang mempunyai “ req (permintaan)', dan ' semula (bertindak balas)” parameter.
  • Di dalam fungsi panggil balik, ' res.render() ” kaedah memberikan respons apabila fungsi panggil balik yang ditentukan dilaksanakan.
  • Kaedah “app.post()” menghantar permintaan HTTP “POST” yang lebih selamat kerana ia tidak memaparkan data dalam URL. Ia juga mentakrifkan fungsi panggil balik yang menggunakan ' req.body ” untuk mendapatkan data daripada medan input.
  • Akhir sekali, ' app.listen() ” kaedah membina sambungan pada port yang ditentukan dan mentakrifkan fungsi panggil balik. Dalam fungsi ini, ' jika pernyataan ' melemparkan ralat jika ia berlaku semasa pelaksanaan program, dan ' console.log() ” memaparkan pernyataan pengesahan pada konsol.

Langkah 6: Sebarkan Aplikasi Node.js

Akhir sekali, gunakan aplikasi Node.js dengan bantuan ' nod ” kata kunci dengan cara ini:



indeks nod. js

Pelaksanaan arahan di atas menunjukkan mesej pengesahan bahawa pelayan berjaya dibuat pada port yang ditentukan:

Sekarang lawati URL berikut http://localhost:8080 untuk melihat Contoh Diari. Pada halaman web 'Diari Contoh' isi semua medan input, dan klik pada ' Hantar Diari butang ” untuk menyimpan kandungan:

Dapat diperhatikan bahawa selepas menyerahkan maklumat, terminal secara automatik menunjukkan semua badan elemen HTML yang digunakan dalam 'Diari Contoh' sebagai objek JSON:

Itu sahaja tentang menggunakan middleware penghurai badan dalam Node.js.

Kesimpulan

Untuk menggunakan ' penghurai badan ” dalam Node.js gunakan “ urlencoded ' dan juga ' JSON ” parser yang menghuraikan kandungan semua permintaan masuk dan memaparkannya sebagai objek JSON. Ia mengendalikan badan permintaan 'POST' dan menghuraikannya untuk mendapatkan semula kandungan semua elemen yang digunakan dalam dokumen HTML. Ia menyediakan cara yang mudah dan paling mudah untuk memproses tarikh yang dihantar oleh badan permintaan HTTP masuk. Siaran ini secara praktikal telah menunjukkan penggunaan middleware penghurai badan dalam Node.js.