Amigos,
Estou apanhando com o consumo de um certo WebService.
Vi num fórum de Delphi que um camarada tinha o mesmo problema e resolveu com o código abaixo.
Como Delphi para mim é grego, eu pergunto:
Alguém do forum, conhecedor de Delphi, poderia “traduzir” o código abaixo para PHP?
var
lMemoriaStream: TMemoryStream;
lTextoStream: TStringStream;
lResultado: AnsiString;
begin
lTextoStream := TStringStream.Create(EmptyStr);
try
Dtm_ClassesLeituraXMLDetran.HTTPReqResp1.ClientCertificate.SerialNum := FCertificadoSelecionado.SerialNumber;
Dtm_ClassesLeituraXMLDetran.HTTPReqResp1.InvokeOptions := [soIgnoreInvalidCerts, soNoSOAPActionHeader, soPickFirstClientCertificate, soAutoCheckAccessPointViaUDDI];
Dtm_ClassesLeituraXMLDetran.HTTPReqResp1.URL := 'http://desmanches.hml.detran.rs.gov.br/integracaonfe';
Dtm_ClassesLeituraXMLDetran.HTTPReqResp1.UseUTF8InHeader := False;
Dtm_ClassesLeituraXMLDetran.HTTPReqResp1.SoapAction := 'http://desmanches.hml.detran.rs.gov.br/integracaonfe/wsdl/pesquisarEstoqueGid';//'IntegracaoGidRNImpl';
lMemoriaStream := TMemoryStream.Create; //http://desmanches.detran.rs.gov.br/integracaonfe/consultarEstoqueGid
try
Dtm_ClassesLeituraXMLDetran.HTTPReqResp1.Execute(Memo1.Text, lMemoriaStream);
lTextoStream.Clear;
lTextoStream.CopyFrom(lMemoriaStream, 0);
lResultado := lTextoStream.DataString;
lResultado := UTF8Decode(lResultado);
Memo2.Lines.Text := lResultado;
finally
FreeAndNil(lMemoriaStream);
end;
finally
FreeAndNil(lTextoStream);
end;
Muito tenkiú!