JonasBollis
-
Total de ítens
1 -
Registro em
-
Última visita
Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.
Envio do arquivo DRCST
em ACBrSPEDFiscal
Postado
Douglas, segue código, sofri alguns dias aqui fazendo funcionar, graças a grande documentação fornecida pelo estado.
o problema que você deve estar passando é que o requestbody não pode ser um TStringStream, mudei para TStream e começou aceitar, também deixa as configurações como está abaixo, se tiver alguma coisa diferente vai voltar ao erro que esta aparecendo ai,
coloca o componente no formulário (idhttp), não coloca nenhuma propriedade e apenas seta como no código abaixo, suave amigo, abraço.
var: RequestBody: TStream; lResponse : TStringStream; ZipEncode : String; begin .... // Codifica o zip: ZipEncode := '"' + EncodeFile(NomeZIP) + '"'; // deixa o idhttp dessa forma: lResponse := TStringStream.Create(); RequestBody := TStringStream.Create(ZipEncode, TEncoding.UTF8); try idHttp1.Request.ContentType := 'application/json'; IdHTTP1.Request.CustomHeaders.Clear; IdHttp1.Request.CustomHeaders.AddValue('Accept', 'application/json'); IdHttp1.Request.CustomHeaders.AddValue('Host', 'https://tributario.sef.sc.gov.br'); IdHttp1.Request.CustomHeaders.AddValue('Cache-Control', 'no-cache'); IdHttp1.Request.CustomHeaders.AddValue('Content-Type', 'application/json'); idHttp1.Post('https://tributario.sef.sc.gov.br/api/drcSt/arquivo/ValidarEstrutura', RequestBody, lResponse); lResponse.Position := 0; // Trata o retorno em um richedit: reResp.Lines.LoadFromStream(lResponse); finally lResponse.Free(); end;