sql >> データベース >  >> NoSQL >> MongoDB

画像ファイルをマングーススキーマのバイナリデータに保存し、画像をhtml形式で表示する

    まず、バッファデータをbase64に変換する必要があります。あなたはそれが問題ではないバックエンドまたはフロントエンドでそれを行うことができます。 yourBufferData.toString('base64')を使用するだけです 。その後、それを使用できます。

    ただし、バイナリデータを保存する代わりに、画像を保存する別の方法を提案します。 nodejsを使用すると仮定します。 fs.writeFileを使用して、そのバイナリデータを使用してリポジトリにイメージを作成できます。 方法。次に、そのイメージパスをレコード(db)に保存できます。その後、ファイルパスをng-src="保存したファイルパス"に入れます。これが私が使用する例です:

    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. DisabledBackend:Celery、Redis、Flaskでの不安定な動作

    2. redisサーバーの再起動/スケール後にredisクライアントを再接続する方法

    3. MongoDB / PyMongo:複数の基準のクエリ-予期しない結果

    4. MongoDB:過去24時間に作成されたドキュメントのみをフェッチしますか?