Können wir multer so konfigurieren, dass Dateien nicht lokal und nur für req.files.image.path gespeichert werden?

9

Der Bedarf meiner Anwendung ist wie folgt: Ich lade das Bild in Cloudinary hoch und speichere die URL des Bildes in meiner mongodb-Datenbank.

Um das Bild in Cloudinary hochzuladen, musste ich den Dateipfad angeben, und dafür verwende ich multer.Ich verwende die Anweisung:

app.use (multer ({dest: './uploads /'}));

Das Problem ist, dass jedes Mal, wenn ich ein Bild von meinem lokalen System in die Datenbank von Cloudinary hochlade, eine lokale Kopie in './uploads/' erstellt wird. Ich möchte, dass dies nicht geschieht, da meine Bilder da sind auf Cloudinary.

Ich lese die Dokumentation von multer , wo es heißt:

  

Multer akzeptiert ein Optionsobjekt, das einfachste ist die Eigenschaft dest, die Multer mitteilt, wo die Dateien hochgeladen werden sollen. Wenn Sie das Optionsobjekt weglassen, wird die Datei umbenannt und in das temporäre Verzeichnis des Systems hochgeladen.

Ich kann nicht feststellen, ob dieser temporäre Upload-Speicherplatz gereinigt werden muss oder ob er bearbeitet wird. Meine Bilder werden auf Cloudinary hochgeladen. Ich habe Multer nur zum Abrufen verwendet:

req.files.photo.path

um zu arbeiten. Gibt es eine andere Möglichkeit, dasselbe zu tun, oder wenn multer so konfiguriert werden kann, dass Bilder nicht auf meinem lokalen System gespeichert werden?

    
Aravind 05.08.2014, 16:08
quelle

2 Antworten

2

Von der Multer-Informationsseite bei Ссылка

  

Wenn die Option inMemory wahr ist, werden keine Daten geschrieben   Festplatte, aber die Daten werden in einem Puffer gespeichert, auf den im Dateiobjekt zugegriffen werden kann.

    
bFunc 11.01.2015 14:46
quelle
0

Vor dem 14-07-2016 konnte multer nicht konfiguriert werden, um Dateien lokal zu speichern.

Aber multer ist nur ein Wrapper von Busboy . Also können wir versuchen, busboy direkt zu verwenden, wenn wir vermeiden wollen, die Platte zu treffen.
Connect-bubsboy wird hilf uns:

%Vor%

Update 14-07-2016

Jetzt hat multer MemoryStorage , um Dateien im Speicher als Puffer zu speichern.

%Vor%     
Ruslan Ismagilov 16.09.2014 09:34
quelle

Tags und Links