Технология Веб-ИРБИС — различия между версиями

Материал из Wikipedia
Перейти к: навигация, поиск
Строка 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> определяет команду, которую должен выполнить веб-шлюз ИРБИС.
 
====Роль фреймов в работе веб-шлюза ИРБИС====
 
 
Веб-шлюз ИРБИС при получении команд '''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-страницу, отправляется клиенту в качестве ответа.
 
  
 
====Все предустановленные параметры====
 
====Все предустановленные параметры====

Версия 15:38, 30 апреля 2015

Веб-приложение ИРБИС состоит из веб-страниц, формируемых в ответ на запросы пользователя.

Порядок формирования веб-страницы

Фреймы

В общем случае, веб-страница формируется путём объединения (склеивания) следующих частей:

  • заголовочной и подвальной частей, формируемых при помощи фреймов и
  • тела страницы, формируемого при помощи формата, который отрабатывает на наборе записей базы данных (соответствующих запросу пользователя).

Система команд Веб-шлюза ИРБИС

Система команд Веб-шлюза ИРБИС позволяет задать собственный набор фреймов и порядок их объединения для каждой задачи. Для разных задач предусмотрены разные команды, например: для страницы приглашения к поиску, результата поиска, отбора записей в корзину заказов и т.д.

Набор команд задаётся в файле irbis_server.ini в контексте базы данных.

То есть, для разных баз данных могут быть настроены разные наборы команд и фреймы.

Имена фреймов веб-шлюз ИРБИС считывает из файла irbis_server.ini. Каждой команде веб-шлюза ИРБИС соответствует имя параметра в файле irbis_server.ini (см. таблицу Команды веб-шлюза ИРБИС).

Таблица. Команды веб-шлюза ИРБИС.

Значение параметра C21COM Описание команды Соответствующий параметр в irbis_server.ini
F показ – команда показа страницы ShowFrames
S поиск – команда выполнения и показа результатов поиска SearchFrames
T словарь – команда показа терминов словаря DictionryFrames
Z заказ – команда отбора записей в корзину заказов ZakazFrames
R запись – команда редактуры записей RecUpdateFrames
E экспорт – команда выгрузки записей
2 файл – команда чтения внешнего объекта
4 скачать – команда заимствования записи

При составлении ответа на команды 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, задав имя и метку параметра. Для этого в секции [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-страницы гиперссылку, содержащую все переданные веб-шлюзу параметры.