Hola Chicos estoy en la fase de integraciones de la aplicación de escritorio y web la cual me obligó a Actualizar mi IDE de XE7 a XE10.4 bueno en realidad estoy con el Trial ya que no he logrado avances significativos con certificados SSL/TSL con los componentes de INDY y REST de XE7.
En fin el dolor de cabeza se me quitó ya que XE10.4 no me tengo que preocupar de eso. sin embargo como puse en mi título hay algo que no comprendo.
recibo el token de la API y la almaceno en una variable de Tipo String el problema está es que al pasarlo como parametro la respuesta es error 401 en fin aquí está el código:
Código Delphi
[-]
procedure TfrmPagoCedula.ConsultaSaldo(CedulaCliente: String);
var
RutaUrl, parametro, barer, CuerpoRespuesta: String;
CargaToken: TextFile;
MiConsultaCedula, VariableDirectaTabla: AnsiString;
begin
eToken.Text := FDMemTable1accessToken.AsString;
Memo1.Text := FDMemTable1accessToken.AsString;
VariableDirectaTabla := FDMemTable1accessToken.AsString;
BalanceSaldo := 0;
RutaUrl :=
'https://miDominio.com/api/services/app/Transaction/ValidateTransactionParameter';
MiConsultaCedula :=
'{"identifierType": 1,"identifierNumber": "4-713-257","branchId": "123","trackingId": "123","programCode": "ENTIDAD"}';
RequestBody :=
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2Fw' +
'Lm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6IjI3N' +
'SIsImh0dHA6Ly9zY2hlbWFzLnhtbHNvYXAub3JnL3dzLzIwMDUvMDUvaWRlbnRpdHkvY2' +
'xhaW1zL25hbWUiOiJXb25nMjAiLCJBc3BOZXQuSWRlbnRpdHkuU2VjdXJpdHlTdGFtcCI' +
'6IjY1RlhCUlRSSVlGVFRUUENMVFFRWUk2M05CMkFLSTVZIiwiaHR0cDovL3NjaGVtYXMu' +
'bWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjoiQ2Fza' +
'GllciAtIEFiYXJyb3RlcmlhIiwiaHR0cDovL3d3dy5hc3BuZXRib2lsZXJwbGF0ZS5jb2' +
'0vaWRlbnRpdHkvY2xhaW1zL3RlbmFudElkIjoiMjQ0IiwiQXBwbGljYXRpb25fVXNlckFj' +
'Y2Vzc2libGVFbnRpdGllcyI6Ilt7XCJFbnRpdHlJZFwiOjEsXCJFbnRpdHlUeXBlXCI6Mn' +
'1dIiwic3ViIjoiMjc1IiwianRpIjoiNDNkOGY5ZjQtODk4Mi00N2E0LWI1ZTYtZTAzZjc1' +
'YjY2Yjg4IiwiaWF0IjoxNTk5ODQwMjUxLCJuYmYiOjE1OTk4NDAyNTEsImV4cCI6MTU5OT' +
'g2MTg1MSwiaXNzIjoiU29saWRhcml0eSIsImF1ZCI6IlNvbGlkYXJpdHkifQ.6wvJyvgQQg'
+ 'LqC7VN2TDdjD-_fbh33gOAkso2FeXwFSI';
RESTReques.Params[0].Value := 'Bearen ' + RequestBody;
RESTReques.Params[0].Value := 'Bearen ' + VariableDirectaTabla;
RESTReques.Execute;
end;
Cual es la diferencia entre una y la otra esto me tiene desconcertado ya que el token según la API cambia cada 24 hora y lo actualizo en un archivo de Texto y tiene que ser almacenado, verificado y utilizado.
Saludos;
novatoerick