Если я запрашиваю в файле моего сервера узла два разных изображения с одного и того же маршрута, то одно из них запрашивает последние, переопределяет первое - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть сервер узла, на котором запущен экспресс, в этом файле server.js у меня есть маршрут

app.get('/profilepics/:id', function(req,res){
  //my logic here
})

, если я попаду по этому маршруту с клиентским HTML-кодом

<img src='http://localhost:2000/profilepic/5cad6caddb246d0bac1bc398>

Я получаю изображение просто отлично, проблема в том, что в том же html-документе я запрашиваю второе изображение, поэтому у меня есть два тега, каждый с разным идентификатором.в этом случае оба изображения отображаются как последние запрошенные.Вот логика, которая у меня есть на этом маршруте:

app.get('/profilepic/:id', (req, res) => {
  id = req.params.id;
  var contentType;
  MongoClient.connect(url, (err, client) => {
    const db = client.db('sangha4');

    db.collection('fs.files').find({
        _id: ObjectId(id)
      })
      .toArray(function (err, docs) {
        contentType = docs[0].contentType;
        var gfs = Grid(db, mongodb);
        var options = {
          _id: ObjectId(id)
        };
        var readstream = gfs.createReadStream(options);
        res.type(contentType);
        readstream.pipe(res).on('finish', function() {
          console.log('done!');
          client.close();
        });
      });
  })
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...