Внутренняя ошибка сервера после развертывания приложения node js для обновления данных - PullRequest
0 голосов
/ 04 марта 2020

У меня проблема с развертыванием моего приложения node js, когда пользователь хочет обновить данные своего профиля. Он отображает «Внутренняя ошибка сервера», то же самое происходит с паролем сброса на панели инструментов. Это кажется странным, так как работает локально хорошо без каких-либо проблем. он работает безупречно, за исключением обновления данных.

Я должен добавить, что я развернул его на Atlas, мог MongoDB, и он вернулся с MongoError: не авторизован администратором для выполнения команды err

Ниже приведена часть кода

const mongo = require('mongodb').MongoClient;
const assert = require('assert');
const objectID = require('mongodb').ObjectID;
const passport = require('passport');

router.get('/profileEdition', ensureAuthenticated, function(req, res){
    res.render('profileEdition', {
        username: req.user.username,
        email: req.user.email,
        fullName: req.user.fullName,
        ostan: req.user.ostan,
        shahr: req.user.shahr,
        addressOne: req.user.addressOne,
        addressTwo: req.user.addressTwo,
        postalCode: req.user.postalCode
    });
});

router.post('/profileEdition', function(req, res){
    var item = {
    fullName: req.body.fullName,
    ostan: req.body.ostan,
    shahr: req.body.shahr,
    addressOne: req.body.addressOne,
    addressTwo: req.body.addressTwo,
    postalCode: req.body.postalCode,
    email: req.body.email
    };

    const fullName = req.body.fullName;
    const email = req.body.email;
    const postalCode = req.body.postalCode;
    const ostan = req.body.ostan;
    const shahr = req.body.shahr;
    const addressOne = req.body.addressOne;

    req.check('fullName', 'نام خود را وارد کنید.').notEmpty();
    req.check('ostan', 'استان محل زندگی خود را وارد کنید.').notEmpty();
    req.check('shahr', 'شهر محل زندگی خود را وارد کنید.').notEmpty();
    req.check('email', 'ایمیل وارد شده صحیح نمیباشد.').isEmail();
    req.check('postalCode', 'کد پستی درست وارد نشده است.').isNumeric();
    req.check('postalCode', 'کد پستی ۱۰ رقم می باشد.').isLength({max: 10});
    req.check('postalCode', 'کد پستی ۱۰ رقم می باشد.').isLength({min: 10});

let errors = req.validationErrors();

 const _id = objectID(req.session.passport.user);
  mongo.connect(url, function(err, db) {

      if(errors){
    res.render('profileEdition', {
        errors: errors
    });
} else {

    assert.equal(null, err);

        db.collection('users').updateOne({_id}, {$set: item}, {runValidators: true}, function(err, result) {

      assert.equal(null, err);
        console.log('Items Updated');
        res.redirect('/users/dashboard');
        db.close();

    });
    }
});
req.flash('successMessages', 'اطلاعات اکانت شما با موفقیت بروزرسانی شد.');
});

была бы безмерно благодарна за помощь каждому.

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