Bom dia,
Estou com problemas de enviar o XML , o RESTResponse.StatusCode retorna sempre 400 com
a mensagem "Sintaxe do XML Invalida".
ao usar o HTTP POST request.
No REQBIN com o mesmo XML o retorno eh 200 , e com o xml assinado OK ,
e com Authorization: Bearer com Token sem erros
Xml anexado.
Se alguém identificar a causa do problema.
Obrigado.
ReSTRequest := TRESTRequest.Create(Application);
RESTResponse := TRESTResponse.Create(Application);
RESTClient := TRESTClient.Create(nil);
OAuth2_PMF:= TOAuth2Authenticator.Create(Application);
OAuth2_PMF.AuthorizationEndpoint := https://nfps-e.pmf.sc.gov.br/api/v1/processamento/notas/processa;
OAuth2_PMF.RedirectionEndpoint := https://nfps-e.pmf.sc.gov.br/api/v1/processamento/notas/processa;
RESTRequest.ResetToDefaults;
RESTClient.ResetToDefaults;
RESTResponse.ResetToDefaults;
OAuth2_PMF.AccessToken := pAnsichar( pToken);
RESTRequest.Client := RESTClient;
RESTRequest.Response := RESTResponse;
RESTClient.BaseURL :=https://nfps-e.pmf.sc.gov.br/api/v1/processamento/notas/processa
//RESTClient.Authenticator := nil;
RESTClient.Authenticator := OAuth2_PMF;
RESTRequest.Method := TRESTRequestMethod.rmPOST;
LDocument := TXMLDocument.Create(nil);
LDocument.LoadFromFile( pAnsichar( pArquivoXML)); { File should exist. }
RESTRequest.Params.AddItem('Authorization', ' Bearer ' + OAuth2_PMF.AccessToken, TRESTRequestParameterKind.pkHTTPHEADER, [poDoNotEncode]);
//RESTRequest.Params.AddItem('Host', 'nfps-e.pmf.sc.gov.br', TRESTRequestParameterKind.pkHTTPHEADER, [poDoNotEncode]);
//RESTRequest.Params.AddItem('Content-Type', 'application/xml', TREstRequestParameterKind.pkHTTPHEADER, [poDoNotEncode], TRESTContentType.ctMULTIPART_FORM_DATA);
RESTRequest.AddBody(LDocument.XML.Text , ctAPPLICATION_XML );
RESTRequest.Accept := 'application/xml';
showmessage('ANTES EXECUTE');
RESTRequest.Execute;
showmessage('depois EXECUTE');
<>
99886_env.xml