FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour CreateObject com API usando .PEM e .KEY (ssl)
Posts: 253
Joined: Fri Feb 03, 2006 04:21 PM

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

Posted: Wed Jan 15, 2025 11:45 AM

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 2501 - Harbour 3.2.0 - Embarcadero 7.43 - MySQL
S茫o Paulo - SP - Brasil
www.sisrev.com.br

Continue the discussion