nodejs comment stocker les données formdata (fichier) en tant que données blob de mongodb
过去多啦不再A梦
过去多啦不再A梦 2017-05-16 13:32:45
0
2
872

Le front-end télécharge un fichier via formdata
Le framework back-end est koa, et le middleware co-busboy est utilisé pour analyser la demande
Il existe un exemple simple dans le document co-busboy qui peut obtenir un ". file stream" FileStream via l'analyse, puis utilisez node Le module fs écrit les fichiers localement, ce qui est assez simple.

Maintenant, mon problème est de stocker les fichiers dans la base de données sous forme de blobs au lieu de les stocker localement
Ensuite, je réfléchis à la façon de les transférer depuis FileStream
Ce FileStream est imprimé comme suit :

.
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' }

À ce moment-là, j'ai vu un attribut appelé buffer, et j'ai également essayé le module Buffer dans node, mais cela ne semblait pas fonctionner.

En bref, la question est de savoir comment convertir un flux de fichiers au format blob ?
S'il vous plaît, donnez-moi quelques conseils

过去多啦不再A梦
过去多啦不再A梦

répondre à tous(2)
伊谢尔伦

J'ai décidé de ne pas stocker les fichiers dans la base de données

过去多啦不再A梦

MongoDB ne le fait pas blob格式,你需要的是GridFS. Jetez d’abord un œil à la documentation du pilote, elle contient des exemples. S’il y a quelque chose que vous ne comprenez pas, discutez-en plus tard.
https://mongodb.github.io/nod...

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal