Доступ к REST-сервисам из ABL
OpenEdge предоставляет библиотеку классов OpenEdge.Net.HTTP.*, которая позволяет получить доступ к сервисам REST из приложения ABL. Эта библиотека предоставляет такие интерфейсы, как IHttpClient, IHTTPRequest и IHTTPResponse, а также такие классы, как Cookie и URI для доступа к REST-сервисам.
Библиотека OpenEdge.Net.HTTP.*:
- Не имеет ограничений по типам контента. ABL рассматривает ответ как объект, который может иметь любой тип содержимого. По умолчанию ABL предоставляет поддержку для преобразования ответа в такие типы контента, как JSON, XML, двоичный файл, HTML / текст, многокомпонентные данные и данные форм.
- Поддерживает куки.
- Поддерживает прокси для каждого клиента или для каждого запроса.
- Выполняет автоматическое перенаправление в случае получения кодов состояния 301 и 302.
- Поддерживает кодирование с фрагментарной передачей (chunked-transfer encoding). Кодирование с фрагментарной передачей – это механизм передачи данных, в котором данные передаются серией (частями). Эта функция является частью версии HTTP 1.1.
- Поддерживает базовую аутентификацию, дайджест-аутентификацию и обратный вызов:
Базовая аутентификация – в этом типе аутентификации клиент отправляет имя пользователя и пароль на сервер при выполнении запроса. Сервер проверяет учётные данные пользователя и отвечает с необходимой информацией. В случае неверных учётных данных сервер отправляет сообщение об ошибке.
Дайджест-аутентификация – в этом типе аутентификации клиент отправляет запрос на сервер. Затем сервер просит клиента проверить подлинность запроса. Клиент отправляет зашифрованную версию имени пользователя и пароля на сервер. Сервер проверяет учётные данные и, если они действительны, отвечает требуемой информацией. В случае неверных учётных данных сервер отправляет сообщение об ошибке.
Обратный вызов – в этом типе аутентификации на клиенте должен быть создан пользовательский интерфейс (класс или процедура) для обеспечения безопасности. Пользовательский интерфейс связывается со службами безопасности на сервере и отвечает за отправку данных аутентификации, таких как имя пользователя и пароль, а также за получение и обработку сообщений об ошибках или предупреждений.
Это наиболее распространённые типы механизмов аутентификации, которые используются в большинстве сервисов REST. Если у вас есть какие-то особые требования, вы можете изменить существующую функциональность в соответствии с вашими требованиями.