Lorsque j'utilise Express, et que mon code est :
app.use(express.bodyParser());
Comment puis-je obtenir le corps brut de la demande ?
Lorsque j'utilise Express, et que mon code est :
app.use(express.bodyParser());
Comment puis-je obtenir le corps brut de la demande ?
C'est une variation de la réponse de l'hexacyanide ci-dessus. Cet intergiciel gère également l'événement 'data' mais n'attend pas que les données soient consommées avant d'appeler 'next'. De cette façon, cet intergiciel et le bodyParser peuvent coexister, en consommant le flux en parallèle.
app.use(function(req, res, next) {
req.rawBody = '';
req.setEncoding('utf8');
req.on('data', function(chunk) {
req.rawBody += chunk;
});
next();
});
app.use(express.bodyParser());
// Change the way body-parser is used
const bodyParser = require('body-parser');
var rawBodySaver = function (req, res, buf, encoding) {
if (buf && buf.length) {
req.rawBody = buf.toString(encoding || 'utf8');
}
}
app.use(bodyParser.json({ verify: rawBodySaver, extended: true }));
// Now we can access raw-body any where in out application as follows
request.rawBody;
Utilisez analyseur de corps Parse le corps avec ce qu'il sera :
app.use(bodyParser.text());
app.use(bodyParser.urlencoded());
app.use(bodyParser.raw());
app.use(bodyParser.json());
ie. Si vous êtes censé obtenir un fichier texte brut, exécutez .text()
.
C'est ce que le body-parser supporte actuellement
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.