Carrega um certificado cliente a partir de um HSM para ser utilizado via HTTP.
Sintaxe
HttpSslClient( <nSSL2>, <nSSL3>, <nTLS1>, <cPassword>, <cCertificatePath>, <cKeyPath>, <nHSM*> ) -> Nil
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
nSSL2 | Numérico | Habilita/Desabilita SSL2. | X | |
nSSL3 | Numérico | Habilita/Desabilita SSL3. | X | |
nTLS1 | Numérico | Habilita/Desabilita TLS1. | X | |
cPassword | Caracter | Senha do certificado. | X | |
cCertificatePath | Caracter | Caminho do certificado no formato "slot_<número>-id_<id hexadecimal>" ou "slot_<número>-label_<label>". | X | |
cKeyPath | Caracter | Caminho da chave no formato "slot_<número>-id_<id hexadecimal>" ou "slot_<número>-label_<label>". | X | |
nHSM | Numérico | Define se utiliza HSM. |
Exemplo
user function exemplo() Local cSlot := "0" Local cModule := 'C:\Program Files (x86)\Feitian\ePass2000_FT12\ngp11v211.dll' // Pronova Local cPass := "12345678" Local idHex := "80125761605040BE9A5D71B677387F67" // Katoen Local cUrl := 'https://homologacao.nfe.fazenda.sp.gov.br:443/nfeWEB/services/NfeStatusServico.asmx' Local cSoapSend := '<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/'; 'XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="'; 'http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><nfeStatusServicoNF xmlns="'; 'http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico"><nfeCabecMsg><?xml version="1.0"'; ' encoding="UTF-8"?><cabecMsg xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.02">'; '<versaoDados>1.07</versaoDados></cabecMsg></nfeCabecMsg><nfeDadosMsg><?xml version="1.0"'; ' encoding="UTF-8"?><consStatServ xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.07">'; '<tpAmb>2</tpAmb><cUF>35</cUF><xServ>STATUS</xServ></consStatServ></nfeDadosMsg></nfeStatusServicoNF>'; '</soap:Body></soap:Envelope>' Local aHeadOut := {'SOAPAction: http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico/nfeStatusServicoNF','Content-Type:'; 'text/xml; charset=utf-8','User-Agent: Mozilla/4.0 (compatible; Protheus 7.00.100812P-20101227; ADVPL WSDL Client 1.101007)'} Local XMLHeadRet:= "" HttpSSLClient(0, 1, 1, cPass, "slot_"+cSlot+"-id_"+idHex, "slot_"+cSlot+"-id_"+idHex, 1) HsmInitialize(cModule) HSMGETCERTFILE("slot_"+cSlot+"-id_"+idHex, "\hsm\000019.pem") XMLPostRet := HttpSPost(cUrl, "", "", "", "", cSoapSend, 30, aHeadOut, @XMLHeadRet) if !Empty(XMLPostRet) conout(" 1 - Comunicacao realizada com sucesso !!!") conout("[" + XMLPostRet + "]") else conout(" 2 - Falha na Comunicacao!!!") endif return
Visão Geral
Import HTML Content
Conteúdo das Ferramentas