Hola!
Ya pude instalar Indy 10 y todo marcha bien.
Comparto implementación HTTPS GET.
Código Delphi
[-]
unit Unit1;
interface
uses IdHTTP, uLkJSON, SysUtils, Dialogs, IdCTypes,
IdSSLOpenSSLHeaders, IdBaseComponent, IdComponent, IdIOHandler,
IdIOHandlerSocket, IdIOHandlerStack, IdSSL, IdSSLOpenSSL;
function ObtenerDatosJSON(const URL: string): TlkJSONobject;
implementation
function ObtenerDatosJSON(const URL: string): TlkJSONobject;
var
Http: TIdHTTP;
LHandler: TIdSSLIOHandlerSocketOpenSSL;
Respuesta: string;
begin
Result := nil;
Http := TIdHTTP.Create(nil);
try
LHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
try
Http.IOHandler := LHandler;
LHandler.SSLOptions.SSLVersions := [sslvTLSv1, sslvTLSv1_1, sslvTLSv1_2];
Respuesta := Http.Get(URL);
Result := TlkJSON.ParseText(Respuesta) as TlkJSONobject;
except
on E: Exception do
ShowMessage('Error: ' + E.Message);
end;
finally
Http.Free;
LHandler.Free;
end;
end;
end.
Aqui su consumo. En Form1 debe ser agregada la libreria
uLkJSON y
Unit1
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
JsonObj: TlkJSONobject;
ValorNombre: string;
begin
JsonObj := ObtenerDatosJSON(FPrincipal.URLPolaris +
'autenticacion/token?authtoken=' + FPrincipal.AccesTokenPolaris);
if Assigned(JsonObj) then
begin
try
ValorNombre := JsonObj.getString('data');
ShowMessage(ValorNombre);
finally
JsonObj.Free; end;
end;
end;
El próximo ejercicio que haré será realizar una petición HTTPS POST.
Saludos.-