Технология Веб-ИРБИС — различия между версиями
Sokv (обсуждение | вклад) |
Sokv (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | Веб-приложение ИРБИС состоит из веб-страниц, формируемых в ответ на | + | Веб-приложение ИРБИС состоит из веб-страниц, формируемых в ответ на запросы пользователя. |
==Порядок формирования веб-страницы== | ==Порядок формирования веб-страницы== | ||
Строка 62: | Строка 62: | ||
AASL|2 | AASL|2 | ||
AASLPUBSANDJOURNALS|2 | AASLPUBSANDJOURNALS|2 | ||
+ | |||
+ | ===Пример последовательности действий Веб-шлюза ИРБИС при формировании веб-страницы в ответ на запрос=== | ||
+ | |||
+ | Веб-шлюз ИРБИС при получении команд '''F''', '''S''', '''T''', '''Z''', '''R''' выполняет следующую последовательность действий: | ||
+ | * Веб-шлюз получил запрос. Запрос содержит параметры <tt>C21COM</tt>, <tt>I21DBN</tt> и другие. | ||
+ | * В файле <tt>irbis_server.ini</tt> веб-шлюз находит секцию, имя которой соответствует значению параметра <tt>I21DBN</tt>. Иными словами: с одной стороны, в качестве значения параметра <tt>I21DBN</tt> указывается имя профиля, с другой стороны, для каждого профиля в файле <tt>irbis_server.ini</tt> должна содержаться секция, имя которой совпадает с именем профиля. | ||
+ | * В указанной секции файла <tt>irbis_server.ini</tt> веб-шлюз находит значение параметра, соответствующего указанной в параметре <tt>C21COM</tt> команде (см. таблицу ''Команды веб-шлюза ИРБИС''). Полученное значение должно представлять собой список фреймов. | ||
+ | * Фреймы обрабатываются, и результат, представляющий собой HTML-страницу, отправляется клиенту в качестве ответа. | ||
==Параметры Веб-шлюза ИРБИС== | ==Параметры Веб-шлюза ИРБИС== | ||
Строка 85: | Строка 93: | ||
Значение параметра <tt>C21COM</tt> определяет команду, которую должен выполнить веб-шлюз ИРБИС. | Значение параметра <tt>C21COM</tt> определяет команду, которую должен выполнить веб-шлюз ИРБИС. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
====Все предустановленные параметры==== | ====Все предустановленные параметры==== |
Версия 15:38, 30 апреля 2015
Веб-приложение ИРБИС состоит из веб-страниц, формируемых в ответ на запросы пользователя.
Порядок формирования веб-страницы
Фреймы
В общем случае, веб-страница формируется путём объединения (склеивания) следующих частей:
- заголовочной и подвальной частей, формируемых при помощи фреймов и
- тела страницы, формируемого при помощи формата, который отрабатывает на наборе записей базы данных (соответствующих запросу пользователя).
Система команд Веб-шлюза ИРБИС
Система команд Веб-шлюза ИРБИС позволяет задать собственный набор фреймов и порядок их объединения для каждой задачи. Для разных задач предусмотрены разные команды, например: для страницы приглашения к поиску, результата поиска, отбора записей в корзину заказов и т.д.
Набор команд задаётся в файле irbis_server.ini в контексте базы данных.
То есть, для разных баз данных могут быть настроены разные наборы команд и фреймы.
Имена фреймов веб-шлюз ИРБИС считывает из файла irbis_server.ini. Каждой команде веб-шлюза ИРБИС соответствует имя параметра в файле irbis_server.ini (см. таблицу Команды веб-шлюза ИРБИС).
Таблица. Команды веб-шлюза ИРБИС.
|
При составлении ответа на команды E, 2, 4 шлюз не использует фреймы. Поэтому в таблице Команды веб-шлюза ИРБИС отсутствует соответствующий параметр в irbis_server.ini. В случае этих команд ответ шлюза клиенту не является HTML-страницей.
Пример команды показа терминов словаря
http://localhost:8080/cgi-bin/irbis64r_15_plus/cgiirbis_64_ft.exe?Z21ID=1500323880383212&SEARCH_IN_FULL_TEXT=1&T21CNR=10&C21COM=T&T21PRF=KT=&I21DBN=IBIS&T21TRM=a&
где при помощи параметра T21TRM=a указывается требование терминов словаря, начинающихся на a.
Пример возврата:
A20040830ARUSY|1 A20041017ABELY|1 A20041118ARUSY|1 A2H|2 A540|9 A54001|7 A550UTILIZATION|1 AACDEMY|1 AASL|2 AASLPUBSANDJOURNALS|2
Пример последовательности действий Веб-шлюза ИРБИС при формировании веб-страницы в ответ на запрос
Веб-шлюз ИРБИС при получении команд F, S, T, Z, R выполняет следующую последовательность действий:
- Веб-шлюз получил запрос. Запрос содержит параметры C21COM, I21DBN и другие.
- В файле irbis_server.ini веб-шлюз находит секцию, имя которой соответствует значению параметра I21DBN. Иными словами: с одной стороны, в качестве значения параметра I21DBN указывается имя профиля, с другой стороны, для каждого профиля в файле irbis_server.ini должна содержаться секция, имя которой совпадает с именем профиля.
- В указанной секции файла irbis_server.ini веб-шлюз находит значение параметра, соответствующего указанной в параметре C21COM команде (см. таблицу Команды веб-шлюза ИРБИС). Полученное значение должно представлять собой список фреймов.
- Фреймы обрабатываются, и результат, представляющий собой HTML-страницу, отправляется клиенту в качестве ответа.
Параметры Веб-шлюза ИРБИС
Параметры поступают к веб-шлюзу ИРБИС 64 в форме параметров HTTP-запроса. Поступившие параметры определяют действия, которые должен выполнить шлюз.
Параметры могут приходить в шлюз по методу POST или GET.
Параметры делятся на предустановленные и пользовательские.
Предустановленные параметры шлюза
Предустановленные параметры могут использоваться для взаимодействия с шлюзом только по оговоренной методике. Набор предустановленных параметров, а также методика их использования предопределяются в процессе разработки системы ИРБИС. Параметры перечислены в таблице, там же описана методика их использования.
Основные параметры шлюза
- C21COM – команда, которую должен выполнить веб-шлюз.
- I21DBN – имя профиля. Веб-шлюз ИРБИС в соответствии с именем профиля определяет набор фреймов, из которых составит ответ клиенту. Веб-шлюз ИРБИС ищет названия фреймов в файле irbis_server.ini в секции, название которой соответствует значению параметра I21DBN (подробнее в разделе Роль фреймов в работе веб-шлюза ИРБИС).
- P21DBN – имя базы данных.
- Z21ID – значение параметра авторизации.
Команды шлюза
Значение параметра C21COM определяет команду, которую должен выполнить веб-шлюз ИРБИС.
Все предустановленные параметры
Пользовательские параметры
Пользовательские параметры отличаются тем, что веб-шлюз ИРБИС может выполнять с ними следующие действия:
- при получении HTTP-запроса шлюз принимает данные, переданные ему с помощью пользовательских параметров;
- в свой ответ на HTTP-запрос клиента (обычно – в генерируемую html-страницу, передаваемую клиенту) может включить набор пользовательских параметров вместе с их значениями, полученными в запросе.
Количество пользовательских параметров и их назначение может определяться в процессе внедрения и конфигурирования ИРБИС 64.
Применение пользовательских параметров для передачи данных между веб-страницами
Пользовательские параметры позволяют передавать данные при переходе между веб-страницами, сгенерированными Веб-шлюзом ИРБИС 64. Процесс передачи данных происходит в два этапа: 1) данные передаются на веб-шлюз в виде параметров запроса; 2) веб-шлюз передаёт данные вместе со сформированной страницей в скрытых полях форм HTML.
Добавление пользовательского параметра
Добавление пользовательского параметра осуществляется в несколько шагов:
- добавление пользовательского параметра в файл инициализации шлюза irbis_server.ini
- Необходимо добавить описание нового пользовательского параметра в настроечный файл irbis_server.ini, задав имя и метку параметра. Для этого в секции [PARAMETRS] используются параметры ini файла PARNAME_ и PARTAG_ (не стоит путать термины пользовательские параметры веб-шлюза и параметры ini файла), где вместо знака подчёркивания ставится номер пользовательского параметра по порядку, например:
PARNAME2=C21COM PARTAG2=2222
- В этом примере мы видим описание второго по порядку из определённых в секции [PARAMETRS] параметров: имя параметра C21COM, метка параметра 2222. Имя и метка параметров должны быть уникальными. После того как описание пользовательского параметра добавлено необходимо изменить значение параметра PARCOUNT в секции [PARAMETRS], его значение должно быть равно порядковому номеру последнего описания пользовательского параметра.
- Примечание: обратите внимание, что в файле irbis_server.ini хранятся описания не только пользовательских параметров, а присутствует также описания предустановленных параметров.
- использование в файлах .frm команд <!FORMAT=INSERT_ALL_PARAMETERS> и <!FORMAT=INSERT_ALL_PARAMETERS_IN_QUERY>
- Команда <!FORMAT=INSERT_ALL_PARAMETERS> обеспечивает вставку в код HTML-страницы всех непустых переданных веб-шлюзу параметров в виде скрытых элементов формы, например:
<input type="hidden" name="PARAM_NAME" value="PARAM_VALUE">
- Команда <!FORMAT=INSERT_ALL_PARAMETERS_IN_QUERY> вставляет в код HTML-страницы гиперссылку, содержащую все переданные веб-шлюзу параметры.