Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Mengakses Medan Borang POST dalam Express.js?

Bagaimanakah Saya Mengakses Medan Borang POST dalam Express.js?

DDD
DDDasal
2024-12-10 05:17:09256semak imbas

How Do I Access POST Form Fields in Express.js?

Mengakses Medan Borang POST dalam Express: Panduan

Apabila bekerja dengan borang, mengakses medan borang POST dalam Express boleh menjadi proses yang mudah. Walau bagaimanapun, perubahan halus dalam versi Express telah memperkenalkan beberapa variasi dalam pendekatan.

Express 4.16.0 dan Kemudian

Bermula dengan Express 4.16.0, mengakses medan borang POST telah dipermudahkan dengan pengenalan daripada express.json() dan express.urlencoded. Fungsi middleware ini menghuraikan JSON dan badan berkod URL, masing-masing.

Untuk menggunakan pendekatan ini, pasang express:

$ npm install express

dan masukkan perisian tengah berikut dalam aplikasi Express anda:

app.use(express.json());       // to support JSON-encoded bodies
app.use(express.urlencoded()); // to support URL-encoded bodies

Setelah perisian tengah ini tersedia, anda boleh mengakses medan borang POST menggunakan req.body objek:

// assuming POST: name=foo&amp;color=red            <-- URL encoding
//
// or       POST: {&quot;name&quot;:&quot;foo&quot;,&quot;color&quot;:&quot;red&quot;}  <-- JSON encoding

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});

Express 4.0 hingga 4.15

Sebelum Express 4.16.0, pengendalian medan borang POST melibatkan pemasangan pakej penghurai badan dan menggunakan perisian tengahnya.

$ npm install --save body-parser

Dalam aplikasi Ekspres anda, sertakan yang berikut baris:

var bodyParser = require('body-parser')
app.use( bodyParser.json() );       // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({     // to support URL-encoded bodies
  extended: true
})); 

Dengan konfigurasi ini, mengakses medan borang POST adalah serupa dengan pendekatan dalam Express 4.16.0:

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});

Nota: Penggunaan express.bodyParser() ialah tidak disyorkan dan bersamaan dengan penggunaan gabungan express.json(), express.urlencoded(), dan express.multipart(). Elakkan express.bodyParser() melainkan anda secara khusus memerlukan sokongan pengekodan berbilang bahagian, yang disertakan dengan kebimbangan keselamatan. Untuk pengekodan berbilang bahagian, rujuk dokumentasi Express.

Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses Medan Borang POST dalam Express.js?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn