In express.js, einer HTTP-Webserver-Bibliothek für die Sprache node.js, kann beim Versuch, POST-Daten (body) abzurufen, ein TypeError: Cannot read property xx of undefined-Fehler auftreten.
Beim Senden einer HTTP-POST-Anfrage mit einem Request-Body an express.js erhalten Sie einen TypeError: Cannot read property xx of undefined-Fehler.
curl http://192.168.0.110:8111/config -X POST -d 'content=hogehogehoge'
Installieren Sie zuerst das Paket:
npm install --save body-parser
Fügen Sie den folgenden Code hinzu:
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
}));
Jetzt können Sie HTTP-POST-Daten mit req.body.value abrufen.
Unten verwenden wir gemäß dem obigen curl-Befehl req.body.content, um content abzurufen.
app.post('/config', async (req, res, next) => {
try {
console.log(req.body.content) ;
res.send("something here.")
next();
} catch (error) {
next(error);
}
});
Die Methode kann je nach Version von express.js variieren.
javascript - How to retrieve POST query parameters? - Stack Overflow