Comme l'image affichée, BodyParser est désormais obsolète, comment corriger la syntaxe ou l'instruction BodyParser pour éliminer la ligne?
3 Réponses :
Si vous utilisez Express 4.16+, vous n'avez plus à importer app.use(express.urlencoded({extended: true}));
app.use(express.json()) // To parse the incoming requests with JSON payloads
Je vous en prie!. Et pour utiliser JSON, vous pouvez simplement aller avec: app.use (express.json ())
Le même problème se produit également à mes projets. Maintenant, dans les derniers express, nous n'avons pas besoin d'importer le corps-carré, nous pouvons simplement utiliser Express comme suivant.
app.use(express.urlencoded({ limit: "50mb", parameterLimit: 500000000 }));
ou Si vous limitez la taille
app.use(express.json()); app.use(express.urlencoded({ extended: true }));
l'analyse corporelle est devenue intégrée avec Express
Ainsi, utilisez simplement
app.post("/yourpath", (req, res)=>{ var postData = req.body; //Or like this, for string JSON body var postData = JSON.parse(req.body); });
de directement Express
vous pouvez désinstaller un carrosserie à l'aide de npm de désinstallation de carrosserie
puis vous Peut simplement obtenir le contenu du post à partir de req.body
app.use(express.json()) //For JSON requests app.use(express.urlencoded({extended: true}));
json.parse (req.body)
est-il vraiment nécessaire tant que vous avez utilisé app.use (express.json ())
? J'ai essayé d'utiliser les propriétés d'objet JSON sans json.psse ()
et cela fonctionne toujours.
@SixTeen Oui, cela fonctionne directement tant que la demande a un format JSON et que vous n'aurez pas besoin d'utiliser json.parse ()
. Mais pour les demandes qui envoient JSON dans un formulaire de chaîne, vous devrez utiliser json.parse ()
pour obtenir un objet JSON utilisable. Un exemple pourrait être un code frontal qui utilise fetch
pour envoyer une demande au serveur et envoie un objet sous forme de chaîne à l'aide de json.strifify ()
Quelle version de
Body-Parser
etnodejs
utilisez-vous?J'utilise 1.19.0 Body-Parser et 14.15.0 Node.js
Veuillez ne pas envoyer d'image, préférez le code: meta.stackoverflow.com/questions/285551/…