Das Front-End lädt eine Datei über formdata hoch.
Das Back-End-Framework ist KOA, und die Co-Busboy-Middleware wird zum Parsen der Anfrage verwendet.
Es gibt ein einfaches Beispiel im Co-Busboy-Dokument, das ein „ file stream“ FileStream durch Parsen und dann verwenden node Das fs-Modul schreibt Dateien lokal, was recht einfach ist.
Jetzt besteht mein Problem darin, die Dateien als Blobs zu speichern, anstatt sie lokal zu speichern.
Dann überlege ich, wie ich von FileStream übertragen kann.
FileStream {
_readableState:
ReadableState {
objectMode: false,
highWaterMark: 16384,
buffer: BufferList { head: [Object], tail: [Object], length: 1 },
length: 10256,
pipes: null,
pipesCount: 0,
flowing: null,
ended: false,
endEmitted: false,
reading: true,
sync: false,
needReadable: true,
emittedReadable: false,
readableListening: false,
resumeScheduled: false,
defaultEncoding: 'utf8',
ranOut: false,
awaitDrain: 0,
readingMore: false,
decoder: null,
encoding: null },
readable: true,
domain: null,
_events: { end: [Function] },
_eventsCount: 1,
_maxListeners: undefined,
truncated: false,
_read: [Function],
fieldname: 'homework',
filename: '2017-1-18.json',
encoding: '7bit',
transferEncoding: '7bit',
mime: 'application/octet-stream',
mimeType: 'application/octet-stream' }
Damals sah ich ein Attribut namens buffer und versuchte auch das Buffer-Modul im Knoten, aber es schien nicht zu funktionieren. Kurz gesagt, die Frage ist, wie man einen Dateistream in das Blob-Format konvertiert.
Bitte geben Sie mir eine Anleitung
决定不把文件往数据库存了
MongoDB没有
blob
格式,你需要的是GridFS
。先看看驱动文档,里面有示例。如果有不懂的地方再讨论。https://mongodb.github.io/nod...