Ich benutze Multer, um ein Bild hochzuladen, und ich erzeuge einen Link, um in eine Datenbank zu speichern, aber um dies zu tun, speichere ich zuerst die Datei auf dem Server. Der "Link" ist der Name der Datei zusammen mit ihrer Erweiterung, aber ich habe Probleme damit, die globale Variable für "link" einzustellen, um sie später in der Datenbank zu speichern ODER vielleicht eine Funktion auszuführen?Setze globale Variable in Multer Variable
var link;
var storeImageData = multer.diskStorage({
destination: function(req, file, callback) {
callback(null, './uploads');
},
filename: function(req, file, callback) {
var fileType = file.originalname;
link = shortid.generate() + "." + fileType;
callback(null, link);
}
});
console.log(link);
Wie Sie sehen können, versuche ich "Link" zu setzen, aber das wird offensichtlich nicht funktionieren. Gibt es eine Möglichkeit, dies zum Funktionieren zu bringen? Oder etwas, das ich untersuchen sollte?
Vielen Dank für Ihre Eingabe, Sello. Ich konnte dies am Ende nicht nutzen, da req.link in meiner Middleware nicht erreichbar war. Ich erkannte jedoch am Ende, warum mein Code nicht funktionierte, weil die Platzierung meiner globalen Variablen nicht im richtigen Block lag. Es funktioniert jetzt perfekt mit diesem behoben. Da ich socket.io verwende, musste meine globale Variable außerhalb der Haupt-Socket-Verbindung platziert werden. – AlphaDaemon