Веб-клиент
Описаны запуск веб-клиента BAS, выбор языка интерфейса и региональных настроек. Рассмотрены аутентификация сеанса через POST-запрос к ресурсу e1cib/start и параметры этого запроса.. Общая информация. Выбор языка интерфейса и региональных настроек. Аутентификация с помощью POST-запроса
Выбор языка интерфейса и региональных настроек
Аутентификация с помощью POST-запроса
Общая информация
Чтобы запустить веб-клиент, необходимо открыть веб-браузер и ввести URL информационной базы. Веб-браузер следует соответствующим образом настроить. Одну и ту же информационную базу (с одинаковым URL) можно открыть в разных вкладках одного веб-браузера.
Выбор языка интерфейса и региональных настроек
Язык интерфейса веб-клиента можно указать в следующем порядке повышения приоритета:
- в настройках приоритетных языков веб-браузера;
- в командной строке (параметр L).
При выборе языка интерфейса выполняются следующие действия:
При обработке запроса к ресурсу, которому соответствует информационная база (например, http://localhost/demo), выбирается язык локализации:
- при наличии в URL параметра L анализируется значение этого параметра. Если по результату анализа параметра язык не найден, анализируется заголовок Accept-Language;
- при отсутствии параметра в URL анализируется стандартный заголовок HTTP — Accept-Language, содержащий приоритетные языки, установленные в браузере.
Доступный язык выбирается из набора локализаций, установленных на веб-сервере:
- если точное соответствие не найдено (например, в параметре указан язык en_US), имя языка сокращается и выполняется повторный поиск (в примере: en).
Если при анализе язык не найден, используется язык по умолчанию — английский en:
- выбранный язык добавляется к базовому URL приложения (в примере получается: http://localhost/demo/en), после чего веб-браузер автоматически перенаправляется на новый URL.
Региональные настройки сеанса веб-клиента, влияющие на отображение значений типа Number/Число и Date/Дата, можно указать в следующем порядке повышения приоритета:
- в настройках приоритетных языков веб-браузера;
- в командной строке (параметр VL).
Региональные настройки сеанса выбираются следующим образом:
- При наличии в URL параметра VL используются региональные настройки, соответствующие коду из параметра. Если значением параметра является код несуществующей локализации, работа веб-клиента завершается с ошибкой.
- При отсутствии параметра VL в URL анализируется стандартный заголовок HTTP — Accept-Language, содержащий приоритетные языки, установленные в браузере.
Примечание
Веб-браузер Safari не поддерживает настройки приоритетных языков. Вместо этого используется язык интерфейса операционной системы.
Аутентификация с помощью POST-запроса
Иногда необходимо запустить систему, минуя стандартное окно аутентификации пользователей. Это может быть необходимо при аутентификации через специализированную форму, например интегрированную в какой-либо веб-сайт, или если логин и пароль для входа в информационную базу хранятся в отдельной базе данных.
Для реализации этих требований предусмотрена возможность аутентификации сеанса веб-клиента с помощью POST-запроса к специальному ресурсу информационной базы: e1cib/start. В этом случае запуск выполняется следующим образом:
- Выполняется POST-запрос для аутентификации клиента.
- Если аутентификация выполнена успешно, от имени пользователя, переданного в POST-запросе, создается сеанс.
- Запускается веб-клиент, в командную строку которого передаются следующие параметры из POST-запроса: LowClientConnectionSpeed, LaunchParameter, LocaleCode, Zone.
- Запущенный веб-клиент подключается к аутентифицированному на шаге 2 сеансу.
Совет
Для аутентификации рекомендуется использовать протокол HTTPS.
В запросе передаются следующие параметры:
Usr — обязательный
Имя пользователя.
Pwd — необязательный
Пароль пользователя.
Значение по умолчанию: пустая строка.
LowClientConnectionSpeed — необязательный
Скорость соединения.
Возможные значения:
- on — низкая скорость соединения.
- off — нормальная скорость соединения (значение по умолчанию).
LaunchParameter — необязательный
Параметры, которые необходимо передать в прикладное решение (аналог параметра C командной строки веб-клиента).
Значение по умолчанию: пустая строка.
SystemLanguage — необязательный
Язык интерфейса. Если не задан, определяются язык интерфейса и региональные настройки.
LocaleCode — необязательный
Код локализации сеанса. Если не задан, определяются язык интерфейса и региональные настройки.
Zone — необязательный
Значение разделителей.
AuthFailHandling — необязательный
Определяет поведение системы в случае ошибки аутентификации. Возможные значения:
- error — возвращает код ошибки (код ошибки — 402) и текст сообщения об ошибке;
- start — запускается веб-клиент с запросом аутентификации средствами системы;
- redirect — выполняется переход на URL, заданный параметром AuthFailRedirectURL.
Значение по умолчанию: error.
AuthFailRedirectURL — необязательный
Содержит URL, на который необходимо перейти в случае ошибки аутентификации, если для параметра AuthFailHandling установлено значение redirect. URL должен быть абсолютным.
Примечание
Параметры, переданные в теле запроса, имеют приоритет над параметрами командной строки для запуска веб-клиента.
Пример.
Ниже приведен пример HTML-страницы, демонстрирующей работу собственной формы аутентификации для информационной базы, расположенной по адресу http://localhost/demoapp.
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD>
<META http-equiv="Content-Type" content="text/html; charset=utf-8" />
<BODY>
<FORM action="http://localhost/demoapp/e1cib/start" method="post">
Пользователь: <INPUT id="usr" name="usr" /><BR />
Пароль: <INPUT id="pwd" type="password" value="" name="pwd" />
<BR />Низкая скорость: <INPUT id="lowclientconnectionspeed" type="checkbox" name="lowclientconnectionspeed" /><BR />
Параметр запуска: <INPUT id="launchparameter" name="launchparameter" /><BR />
Язык интерфейса: <SELECT id="systemlanguage" name="systemlanguage">
<OPTION value="uk" selected="">Украинский</OPTION>
<OPTION value="en">Английский</OPTION>
</SELECT><BR />
Код локализации сеанса: <SELECT id="localecode" name="localecode">
<OPTION value="uk" selected="">Украинский</OPTION>
<OPTION value="en">Английский</OPTION>
</SELECT><BR />
Область данных: <INPUT id="zone" name="zone" />
<INPUT id="authfailhandling" type="hidden" value="error" name="authfailhandling" />
<P><INPUT type="submit" value="ОК" /> </P>
</FORM>
</BODY>
</HTML>
В результате будет показана следующая форма аутентификации:

Форма POST-запроса