Ich bin ein Entwickler von node.js, der Web-Apps mit express.js erstellt. Inzwischen ist mein Problem:
Immer wenn ich eine App auf meinem Computer erstelle, installiere npm ihre Inhalte und führe sie aus (mit den Knoten app.js und nodemon). Ich erhalte die folgende Meldung in der Konsole:
connect.multipart() will be removed in connect 3.0
visit https://github.com/senchalabs/connect/wiki/Connect-3.0 for alternatives
connect.limit() will be removed in connect 3.0
Express server listening on port 3000
Die App funktioniert, das ist in Ordnung. Wenn ich jedoch eine App klone, die auf einem anderen Computer erstellt wurde, wird diese Meldung nicht angezeigt. Ich gehe also davon aus, dass auf meinem Computer etwas veraltet ist.
Ich ging zu der in der Nachricht genannten Seite und bestätigte meine Spekulationen. Das ist eine Abwertungswarnung. Ich habe jedoch Node und Npm aktualisiert und global ausgedrückt, aber ich erhalte immer noch die Notiz.
Mein Problem ist daher: Ich weiß nicht, was ich aktualisieren muss, um die Verfallsnotizen loszuwerden, weil sie mich ausflippen.
Ich hoffe jemand kann mir helfen. Danke vielmals.
quelle
Antworten:
Dies ist eine Warnung, die verschwindet, sobald Express-Updates zur Verwendung von Connect 3.0 durchgeführt werden. Befolgen Sie als vorübergehende Korrektur die Anweisungen oben unter https://github.com/senchalabs/connect/wiki/Connect-3.0 . Suchen Sie diese Zeile in Ihrer App:
Und ersetzen Sie es durch Folgendes (dies
bodyParser
wird in 3.0 sein):quelle
app.use(express.multipart())
weil meine mehrteiligen Formulare (natürlich) nicht mehr funktionierten, was (natürlich) auch die Abwertungswarnung zurückbrachte.Ich bin für diesen Verfallsbescheid verantwortlich. Hast du das Wiki gelesen? https://github.com/senchalabs/connect/wiki/Connect-3.0
Schritt 1: Verwenden Sie jeden Parser direkt anstelle von
app.use(express.bodyParser());
Schritt 2: Verwenden Sie einen anderen mehrteiligen Parser, zum Beispiel: connect-multiparty kann verwendet werden
app.use(require('connect-multiparty')())
Die Arbeit an Connect 3 und Express 4 hat noch nicht begonnen, da es eine Weile dauert, bis Knoten 0.12 freigegeben wird. Es gibt noch nichts zu aktualisieren.
quelle
npm install express
und sehr einfach :var express = require('express'), app = express(); app.use(express.bodyParser); app.get('/', function(req,res){ res.send(200, 'ok');}); app.listen(3000);
. Eine Anfrage zumhttp://localhost:3000/
Aufhängen von Curl & Browser & druckt Warnung. Das Entfernenapp.use(express.bodyParser)
oder Umschalten aufapp.use(express.json())
bewirkt , dass die App mit dem HTTP-Status 200 "ok"console.log
das Hochladen von Dateien verwenden), können Sie sie vorübergehend überschreiben, während der bodyParser instanziiert wird, und sie dann zurückbringen. Ich habe diesen Ansatz für eineDa Express nur ein Wrapper zum Verbinden ist, empfehle ich die direkte Verbindung.
also statt:
app.use(express.bodyParser());
verwenden:
connect = require('connect'); app.use(connect.json()); app.use(connect.urlencoded());
quelle