Nodejs Ошибка шифрования EINVAL | Недопустимый аргумент - PullRequest
0 голосов
/ 04 февраля 2020

Я развернул Nodejs версию 10.2.1 в CentOS, и на нем запущен мой Nodejs код API. После "npm start", когда я вызываю API {URL}: 3000 / user / signin через интерфейсный код, я получаю "Crypt EINVAL, недопустимая ошибка аргумента на консоли узла. Ниже приведена ошибка -

     at module.exports (/usr/src/app/node_modules/crypt3/sync.js:13:43) 
     at module.exports (/usr/src/app/node_modules/crypt3/index.js:17:29) 
     at /usr/src/app/app/routes/user_routes.js:120:15 
     at tryCatcher (/usr/src/app/node_modules/bluebird/js/release/util.js:16:23) 
     at Promise._settlePromiseFromHandler (/usr/src/app/node_modules/bluebird/js/release/promise.js:512:31) 
     at Promise._settlePromise (/usr/src/app/node_modules/bluebird/js/release/promise.js:569:18)  
     at Promise._settlePromise0 (/usr/src/app/node_modules/bluebird/js/release/promise.js:614:10) 
     at Promise._settlePromises (/usr/src/app/node_modules/bluebird/js/release/promise.js:694:18) 
     at _drainQueueStep (/usr/src/app/node_modules/bluebird/js/release/async.js:138:12) 
     at _drainQueue (/usr/src/app/node_modules/bluebird/js/release/async.js:131:9) 
     at Async._drainQueues (/usr/src/app/node_modules/bluebird/js/release/async.js:147:5) 
     at Immediate.Async.drainQueues [as _onImmediate](/usr/src/app/node_modules/bluebird/js/release/async.js:17:14) 
     at runCallback (timers.js:705:18) 
     at tryOnImmediate (timers.js:676:5) 
     at processImmediate (timers.js:658:5) errno: 22, code: 'EINVAL', syscall: 'crypt' } 

Я использую crypt3 -1.0.0V, а код, в котором выдается ошибка - это часть входа (упомянутая ниже)

 var mm =md5(req.body.password).toLowerCase()
         console.log("ss", mm);
        console.log("hiiiiii")
        if (crypt(md5(req.body.password).toLowerCase(), user.user_hash) == user.user_hash) {
            const JWTToken = jwt.sign(
              {
                id: user.id,
                user_name: user.user_name
              },
              process.env.JWT_SECRET,
              {
                expiresIn: '2h'
              });
            user['token'] = JWTToken;
            user['user_hash'] = '';
            return res.status(200).json({
              data: user
              // success: 'Welcome to the JWT Auth',
              // token: JWTToken
            });
          } else {
            return res.status(401).json({
              failed: 'Unauthorized Access'

Я попытался переустановить крипту через npm, Установлен заново npm с глобальным флагом, но все в порядке. Пожалуйста, дайте мне знать, что мне не хватает.

...