Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

410
Visualizações
if (!options.algorithms) arroja un nuevo error ('se deben configurar los algoritmos'); Error: los algoritmos deben establecerse

Empecé a aprender Nodejs y estoy atrapado en algún punto intermedio. Instalé una nueva biblioteca de npm y era express-jwt , muestra algún tipo de error después de ejecutarse. Adjunto el código y los logs del error, por favor ayúdenme!

 const jwt = require('jsonwebtoken'); require('dotenv').config() const expressJwt = require('express-jwt'); const User = require('../models/user'); exports.requireSignin = expressJwt({ secret: process.env.JWT_SECRET});

Lo siguiente son los registros del error.

 [nodemon] starting `node app.js` D:\shubh\proj\Nodejs\nodeapi\node_modules\express-jwt\lib\index.js:22 if (!options.algorithms) throw new Error('algorithms should be set'); ^ **Error: algorithms should be set** at module.exports (D:\shubh\proj\Nodejs\nodeapi\node_modules\express-jwt\lib\index.js:22:34) at Object.<anonymous> (D:\shubh\proj\Nodejs\nodeapi\controllers\auth.js:64:26) at Module._compile (internal/modules/cjs/loader.js:1138:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
over 4 years ago · Santiago Trujillo
7 Respostas
Responde à pergunta

0

 exports.requireSignin = expressJwt ({ secret: process.env.JWT_SECRET, algorithms: YOU CHOOSE ALGORITHM });

Para obtener más detalles, visite: https://www.npmjs.com/package/express-jwt

 jwt({ secret: new Buffer('shhhhhhared-secret', 'base64') })
over 4 years ago · Santiago Trujillo Relatório

0

Para aquellos que se preguntan qué algoritmo se usa para generar sus tokens

Un JWT se compone de 3 partes separadas por un punto ' . ':

 <header>.<payload>.<signature>

El encabezado (y la carga útil) es solo un objeto JSON codificado en Base64 que contiene el nombre del algoritmo hash.

Por ejemplo, con ese token:

 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJtZXNzYWdlIjoiaGkgc3RhY2tvdmVyZmxvdyJ9.01jBDw7uUgCr8cRMEQt4KJxfL6QLkt0ZuHly2AxdXZY

podría usar atob() en la consola javascript de su navegador para decodificar el encabezado:

 atob('eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9') // → "{\"alg\":\"HS256\",\"typ\":\"JWT\"}"

Aquí se utilizó HS256.

over 4 years ago · Santiago Trujillo Relatório

0

Debe agregar la propiedad de algoritmos al constructor jwt.

Ejemplo;

 expressJwt({ secret: process.env.JWT_SECRET, algorithms: ['RS256'] });
over 4 years ago · Santiago Trujillo Relatório

0

El problema causado por los cambios en la versión 6.0.0. La documentación también se ha actualizado recientemente, dice:

El parámetro de algoritmos es necesario para evitar posibles ataques de degradación al proporcionar bibliotecas de terceros como secretos.

Entonces ahora es obligatorio especificar la propiedad del algoritmo, así:

 expressJwt({ secret: 'secret', algorithms: ['HS256'] })

over 4 years ago · Santiago Trujillo Relatório

0

si se enfrenta a este error, es posible que esté utilizando la nueva versión de 'express-jwt' Downgrade a la versión ^5.3.3 para resolverlo

over 4 years ago · Santiago Trujillo Relatório

0

si el algoritmo anterior: ['RS256'] no funciona, intente esto, algoritmos: ['HS256']

over 4 years ago · Santiago Trujillo Relatório

0

Tuve que enfrentar el mismo error, y después de mencionar el algoritmo en la inicialización express-jwt, el error desapareció.

Código de ejemplo:

 exports.requireSignin= expressJwt({ secret: process.env.jwtSecret, userProperty: "auth", algorithms: ["RS256"], }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda