Неверная строка подписи для подписи Node / Cloudinary - PullRequest
0 голосов
/ 27 августа 2018

У меня проблема с загрузкой изображений с помощью Cloudinary API.

У меня приложение работает на Heroku.Я использую Node для своего бэкэнда.Приложение работает нормально, пока пользователь не попытается опубликовать изображение.Затем я получаю следующее сообщение об ошибке:

Неверная подпись ****************************************.Строка для подписи - 'timestamp = **********.

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

Я настроил переменные среды в Heroku так же, как и в другом приложении,и это работает.Я также установил пакеты Cloudinary и Multer в свой файл package.json.

Есть идеи, что я здесь не так делаю?

Ниже приведен мой код:

var multer   = require('multer');

var storage = multer.diskStorage({

  filename: function(req, file, callback) {

    callback(null, Date.now() + file.originalname);

  }

});

var imageFilter = function (req, file, cb) {

    // accept image files only

    if (!file.originalname.match(/\.(jpg|jpeg|png|gif)$/i)) {

        return cb(new Error('Only image files are allowed!'), false);

    }

    cb(null, true);

};

var upload = multer({ storage: storage, fileFilter: imageFilter});



var cloudinary = require('cloudinary');

cloudinary.config({

  cloud_name: 'digi9mjbp',

  api_key: process.env.CLOUDINARY_API_KEY,

  api_secret: process.env.CLOUDINARY_API_SECRET

})


       router.post("/", middleware.isLoggedIn, upload.single('image'), 
        function(req, res) {
         cloudinary.v2.uploader.upload(req.file.path, function(err,result){
           if(err){
            req.flash("error", err.message);
            return res.redirect("back");
        }
       // add cloudinary url for the image to the topic object under image 
       property
       req.body.topic.image = result.secure_url;
       //add image's public_id to topic object
       req.body.topic.imageId = result.public_id;
       // add author to topic
       req.body.topic.author = {
        id: req.user._id,
        username: req.user.username
       };
       Topic.create(req.body.topic, function(err, topic){
        if (err) {
          req.flash('error', err.message);
          return res.redirect('back');
        }
        res.redirect('/topics/' + topic.id);
       });
       });
       });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...