boa tarde, alguem ja fez o processo de averbacao do cte pela AT&M?
estou usando o componente indy. a parte de buscar o token de autenticacao funciona beleza, mais na hora de fazer a segunda requiscao utilizando o token que me retornaram nao funciona que é o momento que tem q enviar o xml.
ja tentei de todos os jeitos, enviar o caminho, enviar a string do xml, e assim por diante
alguem ja fez este processo e funciona poderia me dar uma ajuda no metodo post para enviar o xml com e com os headers correto?
parte da autenticacao
//*******************************************
Json1 := '{ '+
' "usuario": "'+trim(cdsaux.fieldbyname('usuario_averbacao').asstring)+'", '+
' "senha": "'+trim(cdsaux.fieldbyname('senha_averbacao').asstring)+'", '+
' "codigoatm": "'+trim(cdsaux.fieldbyname('codigo_averbacao_atm').asstring)+'" '+
'} ';
JsonToSend := TStringStream.Create( UTF8Encode(Json1) );
HTTP := TIdHTTP.Create(nil);
Post := TStringList.Create;
Try
HTTP.AllowCookies := True;
HTTP.HandleRedirects := True;
HTTP.Request.Accept := 'application/json';
HTTP.Request.ContentType:='application/json';
JsonRetorno := HTTP.post('http://homologaws.averba.com.br/rest/Auth',JsonToSend);
Finally
Post.Free;
HTTP.Free;
End;
vAuth := copy(JsonRetorno,12,length(JsonRetorno)-13);
//***************************************
//**************************************
parte de enviar o xml para averbar
Documento := TStringList.Create;
Documento.LoadFromFile(cdsgere3LOCAL_CTE.asstring+'\'+
FormatDateTime('yyyymm',cdsCTELoteDATA_EMISSAO.asdatetime)+'\CTe\'+
cdsCTELoteCHAVE.asstring+'-cte.xml');
DocNFeCTe := Documento.text;
Documento.Free;
JsonToSend := TStringStream.Create(DocNFeCTe);
HTTP := TIdHTTP.Create(nil);
Post := TStringList.Create;
Try
HTTP.AllowCookies := True;
HTTP.HandleRedirects := True;
HTTP.Request.Accept := 'application/json';
HTTP.Request.AcceptEncoding := 'gzip, deflate';
HTTP.Request.CustomHeaders.FoldLines := False;
HTTP.Request.CustomHeaders.Values['authorization'] := 'bearer '+trim(vAuth);
HTTP.Request.CacheControl := 'no-nache';
HTTP.Request.Connection := 'keep-alive';
HTTP.Request.ContentType := 'application/xml';
HTTP.Request.CacheControl := 'no-cache';
Post.Add(DocNFeCTe); //aqui ja mandei string, ja mandei stringlist, stringstream, ja mandei o caminho do xml
JsonRetorno := HTTP.Post('http://homologaws.averba.com.br/rest/cte', cdsgere3LOCAL_CTE.asstring+'\'+FormatDateTime('yyyymm',cdsCTELoteDATA_EMISSAO.asdatetime)+'\CTe\'+cdsCTELoteCHAVE.asstring+'-cte.xml');
//**************************************
desde ja agradeço