CreateObject com API usando .PEM e .KEY (ssl)

Post Reply
User avatar
Ari
Posts: 239
Joined: Fri Feb 03, 2006 4:21 pm
Location: São Paulo, SP - Brazil
Contact:

CreateObject com API usando .PEM e .KEY (ssl)

Post by Ari »

Estimado,

Necesito conectarme a una API y me pide un certificado con los archivos: .PEN y .KEY key

yo uso xharbour

¿Alguien tiene un ejemplo de cómo hacer esta conexión?

* Usar POSTMAN y registrar el certificado funciona.

* La API de mi cliente utiliza "Sin autenticación"

[código]

Ejemplo de código fuente API para establecer la conexión:

======================================================
METHOD StartApi() CLASS TApi // Conecta com o Servidor
======================================================
local n

TRY
::oServer = CreateObject( 'MSXML2.XMLHTTP')
CATCH
::oServer = CreateObject( 'MSXML2.ServerXMLHTTP.6.0')
END

if ::oServer == NIL
Msg('Erro interno na criação do oServer')
return nil
Endif

TRY

// cMethod (POST,GET)
// cServer ( URL ) em HTTPS
// cRota ( EndPoint )

::oServer:Open( ::cMethod, ::cServer + ::cRota, .F. )
::oServer:SetRequestHeader( 'cache-control' , 'no-cache' )
::oServer:SetRequestHeader( 'Connection' , 'keep-alive' )
::oServer:SetRequestHeader( 'Accept' , '*/*' )
::oServer:SetRequestHeader( 'Content-Type' , 'text/html,application/json' )


CATCH
END

return nil

===============================================
METHOD EndApi() CLASS TApi // Envia o conteudo
===============================================
TRY
if !empty( ::cBody )
::oServer:Send(::cBody) // quando tem conteúdo no Body
Else
::oServer:Send() // sem conteúdo no Body
Endif

While ::oServer:readyState <> 4
::oServer:WaitForResponse( 500 )
End
::cResponse := ::oServer:responseText

::cBody := ""
::aHeaders := {}
CATCH
BREAK
END

::LogApi() // grava requisições

return nil
[/code]
Thanks,
Ari

FWH 2212 - Harbour 3.2.0 - Embarcadero 7.43 - MySQL
São Paulo - SP - Brasil
www.sisrev.com.br
Post Reply