Огромное спасибо за внимание. Я магу на другом ПК установить Rad Studio 10.3 и там есть свежи версия indy . Но версия библиотек =.DLL файлов тоже найду.
Не знаю, не когда не пользовался postman-ом , посмотрю в google спасибо вам и хорошего дня для советов, для поддержки.
Вот мне интересно: Я делаю что то неправильно или параметры который мне передали доке - то он неправильны ?
Что я первый раз делаю такого задачу - это и так видно . Хочу изучать - разобрать и делать самому
Скачал и установил эту postman у меня документации сказано что авторизации применятся по OAuth2 - протоколу .
Сказано что : Авторизации (ACCESS_TOKEN и REFRESH_TOKEN) принимает такого параметров
Доброго вечера ребята Работал я на этого что как передать это параметры из Delphi на втором ПК установил RAD Studio 10.4 и начинал авторизовать через REST Client = стандартная библиотека , Не знаю как моего мнения на эту задачу мне его НЕ заработал или что то я упустил. Короче, попытался я авторизовать так
Оставил я это ПК где у меня RAD Studio 10.4 и вернулся моего второго ПК где установлено RAD Studio XE3 и стандартное indy 10.5.9.0 и вот заработало через SSL
libeay32.dll и ssleay32.dll выложу который должен в папке проекта indy_dll.rar (540 КБ) У меня 64-бит ОС но с этим dll-ом я работал на 32-бит ОС тоже …
Код авторизации который работает
procedure TForm1.Button1Click(Sender: TObject);
var
MyParams : TStringList;
begin
try
// ---TStringList Создать
MyParams:= TStringList.Create;
//---- Всё параметри внимательно
MyParams.Add('username=xxxxn@gmail.com') ;
MyParams.Add('password=******');
MyParams.Add('client_id=lombard-service') ;
MyParams.Add('client_secret=7676a315-eb0e-4123-bcbf-e5ee8710a422');
MyParams.Add('grant_type=password') ;
//--------HandleRedirects := true; ----------------------
IdHTTP1.HandleRedirects := true;
// --------Только это для SSL -----------
IdHTTP1.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
//--Без этого тоже работает. Но я добавил что запрос отправил utf-8 -------------------
IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded';
IdHTTP1.Request.Charset := 'utf-8';
//---IdHTTP1.Post('https: отправляю запрос и в конце передаю MyParams
// И ответ запроса получаю Memo1 ------------------
Memo1.Lines.Text := IdHTTP1.Post('https://accounts.police.ge/auth/realms/company/protocol/openid-connect/token', MyParams);
finally
MyParams.Free;
end;
end;
end.
Мне ещё надо разобраться отправить данных из MS SQL типа SELECT … FROM , WHERE
Это авторизация для этого… Не дают прямой доступ к сервером и требуют что конца дня передали им данных вот так… Продолжаю читать док и пилит . Если будет вопроси напишу… Пока всё нормально ! Спасибо всем
Я так думаю “может ошибаюсь” или для того что не работал некогда веб сервером. Я как-то уже магу авторизоваться на сайте с помощью Delphi XE3 да. Мне осталось передать данные через PUT . Надо потренироваться над этим и потом заключить код авторизации в процедуре и вызвать перед PUT . Вот тогда не понятно зачем мне это acces token и refresh token ? Почитаю буду изучать обязательно. Спасибо вам огромное и удачного дня. Очень помогал и много время уделял.
В документации должно быть написано что с ним делать, обычно добавить заголовок Authorization с ним.
Без него соответственно не будут работать запросы.
Читаю
– Сервис для авторизаций использует OAuth 2 стандарт
– Сервисе, для применения методов нужно http request-е header-е выходилос Authorization: Bearer <ACCESS_TOKEN>
– Сервисный credential-ов
procedure TForm1.Button1Click(Sender: TObject);
var
MyParams : TStringList;
begin
try
// ---TStringList Создать
MyParams:= TStringList.Create;
//---- Всё параметри внимательно
MyParams.Add('username=xxxxn@gmail.com') ;
MyParams.Add('password=******');
MyParams.Add('client_id=lombard-service') ;
MyParams.Add('client_secret=7676a315-eb0e-4123-bcbf-e5ee8710a422');
MyParams.Add('grant_type=password') ;
//--------HandleRedirects := true; ----------------------
IdHTTP1.HandleRedirects := true;
// --------Только это для SSL -----------
IdHTTP1.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
//--Без этого тоже работает. Но я добавил что запрос отправил utf-8 -------------------
IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded';
IdHTTP1.Request.Charset := 'utf-8';
//---IdHTTP1.Post('https: отправляю запрос и в конце передаю MyParams
// И ответ запроса получаю Memo1 ------------------
Memo1.Lines.Text := IdHTTP1.Post('https://accounts.police.ge/auth/realms/company/protocol/openid-connect/token', MyParams);
finally
MyParams.Free;
end;
end;
end.