Soy bastante nuevo en Javascript y Node. Usando Jupyter Notebook, ejecuté una subsección de esta [TARJETA DE SALUD INTELIGENTE][1] para generar una clave. Acabo de tomar la sección "Creación de la tarjeta de salud firmada" y la ejecuté en el cuaderno. Obtengo "{ teclas: [] }" . Cuando lo ejecuto desde Node, no obtengo nada (ningún error ni salida JSON). Estoy usando MacOS Big Sur 11.6.2 y nodo 16.9.0 y nodo-jose 2.0.0
La subsección real que ejecuté es:
var jose = require('node-jose'); const keystore = jose.JWK.createKeyStore() let signingKey; keystore.generate("EC", "P-256"). then(function(result) { // {result} is a jose.JWK.Key signingKey = result; }); keystore.toJSON(true);Cuando agregué console.log (signingKey) a la función de generación en Jupyter Notebook, obtengo la clave, por lo que, de alguna manera, la clave de firma no se exporta fuera de la función de generación.
Revisé todas las preguntas y los documentos de Node-Jose, pero no puedo resolverlo. ¿Qué le falta a este despistado?
La clave de firma es una variable local dentro de la función de generación. Todo lo que necesito hacer es agregar un retorno (clave de firma) a la función y tengo mi clave.
Estoy seguro de que hay una mejor respuesta, pero al menos he aprendido un poco sobre .then().