Ir para conteúdo
  • Cadastre-se

dev botao

CONSULTA API USANDO INDY : ERRO : Error connecting with SSL


Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 1168 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Companheiros

Gostaria de solicitar ajuda dos amigos para um assunto que tenho pouco domínio.

Em um sistema legado que estou encarregado de fazer manutenção, existe um recurso 
já antigo para interagir com a seguinte Api : https://www.receitaws.com.br/v1/cnpj/[cnpj].

O problema é que imagino que os mantedores deste site devem ter mudado os requisitos do GET para TLS.
O Código-fonte em vigor é o que listo abaixo ( que utiliza o componente Indy IDHttp ).

O resultado desta rotina é o seguinte erro :
Error connecting with SSL.
Error connecting with SSL.
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

Podem os companheiros me auxiliar indicando o que posso mudar para resolver o erro ?

Grato 

    Código-Fonte:
    IdSSLIOHandlerSocketOpenSSL1 := TIdSSLIOHandlerSocketOpenSSL.Create(nil);

    IdHTTP1 := TIdHTTP.Create(nil);

    IdSSLIOHandlerSocketOpenSSL1.Name := 'IdSSLIOHandlerSocketOpenSSL1';
    IdSSLIOHandlerSocketOpenSSL1.Port := 0;
    IdSSLIOHandlerSocketOpenSSL1.DefaultPort := 0;
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvSSLv23;
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.SSLVersions := [sslvTLSv1];
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Mode := sslmBoth;
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.VerifyMode := [];
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.VerifyDepth := 0;

    IdHTTP1.Name := 'IdHTTP1';
    IdHTTP1.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
    IdHTTP1.Request.ContentLength := -1;
    IdHTTP1.Request.ContentRangeEnd := -1;
    IdHTTP1.Request.ContentEncoding := 'utf-8';
    IdHTTP1.Request.ContentType := 'application/json';
    IdHTTP1.Request.ContentRangeStart := -1;
    IdHTTP1.Request.ContentRangeInstanceLength := -1;
    IdHTTP1.Request.Accept := 'text/javascript';
    IdHTTP1.Request.BasicAuthentication := False;

    URL = '

https://www.receitaws.com.br/v1/cnpj/27865757000102';

    IdHTTP1.Get(url, retorno);
 

  • Moderadores
Postado
9 minutos atrás, AnDes Sistemas disse:

IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvSSLv23;
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.SSLVersions := [sslvTLSv1];

mudar para TLS 1.2

caso não tenha vai precisar atualizar o indy

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado

Sr. Juliomar

Bom Dia!

Efetuei o seguinte ajuste :

   IdSSLIOHandlerSocketOpenSSL1.SSLOptions.SSLVersions := [{sslvSSLv2, sslvSSLv3,} sslvTLSv2];

Mas continua resultando no seguinte erro ( :

image.png.f6064a8fb4e55c8c2e3d021e4c3ad9b0.png

Será que é uma limitação do Delphi em que o Erp foi desenvolvido ? ( Delphi XE2 )?

O senhor teria mais alguma sugestão ?

Grato

 

  • Moderadores
Postado
2 horas atrás, AnDes Sistemas disse:

Sr. Juliomar

Bom Dia!

Efetuei o seguinte ajuste :

   IdSSLIOHandlerSocketOpenSSL1.SSLOptions.SSLVersions := [{sslvSSLv2, sslvSSLv3,} sslvTLSv2];

Mas continua resultando no seguinte erro ( :

image.png.f6064a8fb4e55c8c2e3d021e4c3ad9b0.png

Será que é uma limitação do Delphi em que o Erp foi desenvolvido ? ( Delphi XE2 )?

O senhor teria mais alguma sugestão ?

Grato

 

Acho que é versão do Indy vai precisar atualizar

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado

Sr. Juliomar

Muito obrigado por sua ajuda.

Vou fazer atualização do Indy.

Também mandei um email para o pessoal de ti deste site : www.receitaws.com.br solicitando ajuda.

Se desejarem já podem fechar este post.

 

 

  • Curtir 1
  • Fundadores
  • Solution
Postado
  • Curtir 2
  • Obrigado 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Membros Pro
Postado

Sr. Daniel

Sua sugestão resolveu o meu problema.

Utilizando a Synapse a consulta funcionou plenamente.

Aproveitei a oportunidade e desenvolvi uma Consulta ao Contribuinte utilizando também os componentes : AcbrNfe e AcbrConsultaCNPJ.

Muito obrigado por sua ajuda.

  • Curtir 2
  • Obrigado 1
  • Administradores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 1168 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.