Estoy trabajando en un sistema de verificación de documentos basado en blockchain. El sistema funciona perfectamente cuando existe un documento emitido por el usuario. El problema es cuando no hay un documento emitido por el usuario (por ejemplo, cuando el usuario es nuevo), el error es con el siguiente código,
<% console.log('fit', JSON.parse(documents, null, '\t')) %>
Cuando el usuario emite un documento, devuelve los siguientes datos JSON:
adaptar
[ { Key: 'DOCUMENT0', Record: { name: 'bachelor of science degree', url: 'https://bitcoin.org/ggg.pdf', issuedBy: 'sol123', dateOfIssuance: '12:18 PM, 25 September, 2021', hashedDoc: 'dac729a8acf4b8a88f73f5bd84206c34e01e0992efa251b772f68696e2c2539c9ed0090e73ef6b87dc24e3177c6fd5341c3e9e24ef14267ce07ab9428aeed897', docType: 'Whitepaper' } } ]El problema es cuando un usuario crea una cuenta (registro) e inicia sesión en el sistema por primera vez o cuando no hay ningún documento emitido por el usuario, devuelve el siguiente error:
Error de sintaxis: /home/bishoftu/fabcar/javascript/views/pages/dashboard.ejs:13
11| 12| <div class="list-group" id="list-tab" role="tablist" style="margin-top: 10px;">13| <% console.log('fit', JSON.parse(documents, null, '\t')) %> 14|
Fin inesperado de la entrada JSON en JSON.parse ()
Lo que quiero es mostrar el mensaje "NO HAY DOCUMENTO EMITIDO", cuando no hay ningún documento emitido por el usuario.
Coloque JSON.parse() en una declaración de prueba/captura y registre un error personalizado si falla:
try { let json = JSON.parse(documents, null, '\t'); console.log(json); } catch(error) { console.info("NO DOCUMENT ISSUED"); }