Estoy en un módulo personalizado para Drupal y necesito usar JWT en javascript.
Así que probé npm i jsonwebtoken e importé import jwt from "../node_modules/jsonwebtoken/index.js"; en mi js/index.js
Pero tengo el siguiente error: Uncaught SyntaxError: The requested module '../node_modules/jsonwebtoken/index.js' does not provide an export named 'default'
No entiendo qué hacer y cómo puedo cargar mi biblioteca jsonwebtoken.
Lo siento, soy realmente un principiante en javascript.
Cuando importa módulos de nodo, no ingresa la ruta relativa. Solo pones el nombre del módulo que estás intentando importar. Además, el módulo no tiene un módulo predeterminado, lo que significa que necesita importar todo en una variable o importar funciones específicas.
Si usa javascript, debe usar require en lugar de import. El siguiente ejemplo está tomado de sus documentos.
// reference https://www.npmjs.com/package/jsonwebtoken var jwt = require('jsonwebtoken'); var token = jwt.sign('payload', 'secret');// rápido y sucio
import * as jwt from 'jsonwebtoken';// Esta es la forma en que debe hacerlo
import {sign, decode, JsonWebTokenError, TokenExpiredError, verify, NotBeforeError} from 'jsonwebtoken' Creé un archivo example.ts y ejecuté los siguientes comandos.
npm i -s jsonwebtoken && npm i -D @types/jsonwebtokenAsí que mi estructura es algo así
Luego agregué esas 2 líneas para obtener el resultado a continuación.
import {sign} from 'jsonwebtoken'; sign('foo-bar', 'secret', undefined, ((err, res) => console.log(res))); Consola: eyJhbGciOiJIUzI1NiJ9.Zm9vLWJhcg.o2WiQrAIplX3gvloUOTaxCTlvmsWhFwxk9rh6xHoFs8