La plupart des intergiciels (comme compresser) n'est plus livré avec Express
Je viens d'installer [email protected], [email protected], [email protected] et [email protected] (juste pour s'assurer). Mais j'ai toujours erreur suivante lors de l'exécution de sails lift
/Users/myuser/myproject/backend/node_modules/express/lib/express.js:89
throw new Error('Most middleware (like ' + name + ') is no longer bundle
^
Error: Most middleware (like compress) is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.
at Function.Object.defineProperty.get (/Users/myuser/myproject/backend/node_modules/express/lib/express.js:89:13)
at Object.module.exports.express.customMiddleware (/Users/myuser/myproject/backend/config/passport.js:127:20)
at Array.loadExpress [as 1] (/usr/local/lib/node_modules/sails/lib/express/index.js:162:25)
at listener (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:462:46)
at /usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:416:17
at Array.forEach (native)
at _each (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:32:24)
at Object.taskComplete (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:415:13)
at processImmediate [as _immediateCallback] (timers.js:330:15)
Aucune idée pourquoi?
OriginalL'auteur HP. | 2014-04-16
Vous devez vous connecter pour publier un commentaire.
Voiles ne supporte pas officiellement Express 4; il y a une raison Expresse de la dépendance dans les Voiles
package.json
est ensemble explicite de version! Vous pouvez utiliser les autres réponses ici pour essayer et obtenir vos Voiles application en cours d'exécution, mais vous êtes sur votre propre jusqu'à ce que nous avons mise à jour de la base de l'utilisation de ces nouvelles Express.Nous prévoyons de rejoindre l'équipe Express de l'essayer et de le synchroniser les communiqués de mieux dans le futur, mais pour le moment, nous travaillons dur sur de sortir une version stable de Voiles v0.10!
OriginalL'auteur sgress454
Il ne suffit pas d'installer ces dépendances dans l'express 4.0.
Maintenant, vous avez besoin de les inclure dans Votre application avec
et ensuite de l'utiliser.
Il est très agréable de l'article ici: lien
et aussi ici: lien
sur la façon de traiter avec la migration à partir de l'expression 3.x.x à 4.x.x
OriginalL'auteur Jarema
Express 4.0, le middleware de la documentation dit,
Donc, vous devez inclure explicitement les middlewares dans le
package.json
, comme une dépendance. Voir le lien dans le texte cité de connaître le référentiel d'informations de toutes les middlewares.OriginalL'auteur thefourtheye
https://github.com/expressjs/body-parser/issues/31
changer votre
bodyParser()
àapp.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extended: true }))
Peut-être que vous aurez la bonne réponse.
depuis la version express de 3 à 4, corps-analyseur n'est pas dans l'express,vous devez l'installer independencly.
Peut vous aider.
OriginalL'auteur YinPeng.Wei