viewtopic.php?t=14474
Jose, funciona perfecto como bien compartes. Lo he probado y Ok.
Yo hasta hoy lo he utilizado con CreateObject()
Código: Seleccionar todo
METHOD Button1Click( oSender ) CLASS TForm1
local resolveTimeout := 5000
local connectTimeout := 5000
local sendTimeout := 40000
local receiveTimeout := 60000
Local cUrlService, cDataSend, cResponse
::oMemo1:Value := ""
cUrlService := "https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP"
cDataSend := HB_MemoRead("Request.XML")
WITH OBJECT CreateObject( "WinHttp.WinHttpRequest.5.1" )
:SetTimeouts( resolveTimeout, connectTimeout, sendTimeout, receiveTimeout )
:Open( "POST", cUrlService, .F. )
// Cabeceras
:SetRequestHeader( "Content-Type", "text/xml;charset=UTF-8" )
//En fa prou amb un Certificat "instal·lat" al navegador... en aquest cas, només cal indicar quin certificat agafar, sense sel·leccionar-ne un en concret.
:SetClientCertificate( "12345678X NOMBRE APELLIDO (R: B12345678)" )
// Enviar mensaje
:Send( cDataSend )
::oMemo1:Value := cResponse := :ResponseText
END
HB_MemoWrit("Response.xml",cResponse)
RETURN Nil
Lo que me facilita de esta manera és que no es necesario el password del certificado.
No se si es posible de la manera que tu has compartido, mediante curl.