после развертывания среднего веб-сайта до aws получение ошибок для метода публикации - PullRequest
0 голосов
/ 11 июля 2020

изображение ошибки

эта ошибка возникает, когда я развертываю свой веб-сайт на aws. На локальном компьютере ошибки не было .. в основном я хочу добавить некоторые данные и одно изображение в пн goose. в локальном все работает нормально.

exports.create = (req, res) => {
if (!req.files) {
res.status(400).send({ message: "Please select image" });    
}else
{
const file = req.files.image;
 const filename = req.files.image.name;
  const underFile=filename.replace(/\s/g, "");

  const myFileName = underFile.split('.').join('-' + Date.now() + '.');
  file.mv(__dirname + '/uploads/' + myFileName, function (err) {
  if (err) {
  res.status(500).send({
    message:err
  });
  } else {
  const url = req.protocol + '://' + req.get("host");
  const tutorial = new Tutorial({
    data: req.body.data,
    image: url + "/uploads/" + myFileName,
    creator : req.userData.userId,
    uploaderName : req.body.name,
    createdDateTime : new Date()        
  });


 //Save post in the database
  tutorial.save(tutorial).then(data => {
    res.status(200).send({
      message:"success"
    });
  }).catch(err => {
    res.status(500).send({
      message:err
    });
  });
  }
  })
  }
  };

это мой nodejs код сохранения. Я также попытался удалить весь код сохранения и заменить только res.status (200) .send ({сообщение: "это работает" }); на этот почтовый запрос, тогда он работает правильно. но если я добавлю код сохранения, он не сработает

1 Ответ

0 голосов
/ 11 июля 2020

вы не забыли обновить URL-адрес api environment.prod.ts в angular для производства?

, потому что он заменит файл enviroment.ts, предназначенный для разработки.

, а также всегда заключайте свои функции в блок try catch, чтобы обработать ошибку, если она происходит внутри функции.

exports.create = (req, res) => {
  try {
    if (!req.files) {
      return res.status(400).send({ message: 'Please select image' });
    }
    const file = req.files.image;
    const filename = req.files.image.name;
    const underFile = filename.replace(/\s/g, '');

    const myFileName = underFile.split('.').join('-' + Date.now() + '.');
    file.mv(__dirname + '/uploads/' + myFileName, function(err) {
      if (err) {
        return res.status(500).send({
          message: err
        });
      }
      const url = req.protocol + '://' + req.get('host');
      const tutorial = new Tutorial({
        data: req.body.data,
        image: url + '/uploads/' + myFileName,
        creator: req.userData.userId,
        uploaderName: req.body.name,
        createdDateTime: new Date()
      });

      //Save post in the database
      tutorial
        .save(tutorial)
        .then((data) => {
          res.status(200).send({
            message: 'success'
          });
        })
        .catch((err) => {
          res.status(500).send({
            message: err
          });
        });
    });
  } catch (e) {
    res.status(500).send({ error: e });
  }
};

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...