sql >> Database >  >> NoSQL >> MongoDB

Sla afbeeldingsbestand op in binaire gegevens in mangoestschema en toon afbeelding in html-vorm

Allereerst moet u buffergegevens converteren naar base64. Je kunt het in back-end of front-end doen, het maakt niet uit. Gebruik gewoon yourBufferData.toString('base64') . Dan kun je het gebruiken.

Ik zou echter een andere manier voorstellen om afbeeldingen op te slaan in plaats van binaire gegevens op te slaan. Ervan uitgaande dat u nodejs. U kunt een afbeelding in een repository maken met die binaire gegevens met behulp van fs.writeFile methode. Dan kun je dat beeldpad opslaan in record (db). Daarna plaatst u gewoon het bestandspad in ng-src="bestandspad dat u hebt opgeslagen". Hier is het voorbeeld dat ik gebruik:

var path = 'upload/profiles/' +req.body.userId + '_profile.jpg';
      fs.writeFile(path, base64data, function(err) {
        if (err) return next(err);
        User.findByIdAndUpdate({
          _id: req.body.userId
        }, {
          $set: {
            profileImg: 'upload/profiles/' +req.body.userId + '_profile.jpg'
          }
        }, function(err, user) {
          if (err) return next(err);
          return res.send(user);
        });
      });

  <img ng-src="savedpath">



  1. Audio ophalen - binair bestand - opgeslagen in mijn Mlab

  2. Gegevens ophalen tussen twee dates mongo

  3. Hoe plaats je een document in mongodb met behulp van mangoest en krijg je de gegenereerde id?

  4. Documentdatabases:overtollige gegevens, referenties, enz. (specifiek MongoDB)