Pesquisar na Comunidade
Showing results for tags 'multthread'.
Encontrado 1 registro
-
Alguns dias atrás, eu postei aqui uma notícia de um exemplo em NodeJS para uso da ACBrLibNFe cedido por um usuário, clique aqui para ir para o post. Ele se baseou em um outro exemplo, conforme o post original. Mas alguns usuários relataram problemas como Segmentation fault, senha inválida ou erro ao ler certificado. Isso pode acontecer devido a incompatibilidade do certificado com a OpenSSL. Mas é fácil de resolver. Vamos ao testes: Primeiro ambiente Linux Mint 21 derivado do Ubuntu 22.04. Utilizando Node 12 e OpenSSL 1.1.1.1 Foram realizados com sucesso os testes em Multi-thread. Observe que temos 2 navegadores requisitando o status da Sefaz. Neste caso node 12, não funciona com OpenSSL 3.x.x.x com a lib. Agora vamos testar com a OpenSSL 3. Atenção: Para utilizar openssl 3.x.x.x, pode ser necessário instalar o certificado e após isso exportar ele novamente. Isso vai fazer com que ele seja recriado com "rotinas mais modernas" o que vai possibilitar a leitura no OpenSSL 3.x.x.x. Para saber mais, clique aqui. Veja abaixo como fazer na imagem: Instalado a versão OpenSSL 3.x.x.x parou de funcionar no meu ambiente com Node12. E mesmo instalando a versão Node16, o erro Segmentation fault persistiu. Em pesquisas encontrei que: "Node.js v17.x, v18.x, and v19.x use OpenSSL v3." Então Instalei o Node20 ! Agora meu ambiente está com Ubuntu 22.04, Node20 e OpenSSL 3.X Antes que me pergunte, sim, utilizei o mesmo exemplo construido no Node12. Ele funciona no Node16 e também funcionou no Node20 (foi uma das barreiras que enfrentei por não dominar a linguagem). Para que funcione, você precisa apagar a pasta Node_modules e os arquivos package.json e package-lock.json para que eles possam ser recriados com suas novas versões. Após isso precisa instalar os pacotes requeridos. Para saber qual, basta executar o exemplo.. Ao dar o erro ele vai mostrar o pacote faltando do Node. Observação importante: Verifique o ArquivoLog criado. Nele é apontado onde foi criado o arquivo acbrlib.ini. No meu caso em "\usr\bin". Precisei editar (em modo root) após trocar de VM, pois os paths não estavam corretos. Concluindo, o Node20: Suporta OpenSSL3, com a ACBrLibNFe MT Atual e com o INI Correto? Vamos aos testes... Realizado os testes no Ubuntu 22.04, OpenSSL 3, Node20 com Sucesso! Observe que tanto FireFox quanto Chrome estão recebendo reposta do certificado, com sucesso. Eu precisei fazer algumas alterações nos fontes do exemplo original, então vou anexar para que você possa sobrescrever = reqMt-alterado.zip Fonte Original e Manual da contribuição acima, clique aqui para ir para a postagem do usuario "Desdobrar" Lembre-se de alterar os caminhos do certificados, paths e deixar de acordo com o seu ambiente. Espero ter ajudado!
- 2 replies
-
- 5
-
- acbrlib
- acbrlibnfemt
-
(e 3 mais)
Tags: