Технология Веб-ИРБИС — различия между версиями
Sokv (обсуждение | вклад) |
Sokv (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | Параметры поступают к веб-шлюзу | + | Параметры поступают к веб-шлюзу ИРБИС 64 в форме параметров HTTP-запроса. Поступившие параметры определяют действия, которые должен выполнить шлюз. |
Параметры могут приходить в шлюз по методу POST или GET. | Параметры могут приходить в шлюз по методу POST или GET. | ||
Строка 7: | Строка 7: | ||
==Предустановленные параметры шлюза== | ==Предустановленные параметры шлюза== | ||
− | Предустановленные параметры могут использоваться для взаимодействия с шлюзом только по оговоренной методике. Набор предустановленных параметров, а также методика их использования предопределяются в процессе разработки системы | + | Предустановленные параметры могут использоваться для взаимодействия с шлюзом только по оговоренной методике. Набор предустановленных параметров, а также методика их использования предопределяются в процессе разработки системы ИРБИС. Параметры перечислены в таблице, там же описана методика их использования. |
===Основные параметры шлюза=== | ===Основные параметры шлюза=== | ||
* <tt>C21COM</tt> – команда, которую должен выполнить веб-шлюз. | * <tt>C21COM</tt> – команда, которую должен выполнить веб-шлюз. | ||
− | * <tt>I21DBN</tt> – имя [[Профили|профиля]]. Веб-шлюз | + | * <tt>I21DBN</tt> – имя [[Профили|профиля]]. Веб-шлюз ИРБИС в соответствии с именем профиля определяет набор [[Фреймы|фреймов]], из которых составит ответ клиенту. Веб-шлюз ИРБИС ищет названия фреймов в [[Конфигурационный файл веб-шлюза ИРБИС irbis server.ini|файле irbis_server.ini]] в секции, название которой соответствует значению параметра <tt>I21DBN</tt> (подробнее в разделе [[#Роль фреймов в работе веб-шлюза ИРБИС|Роль фреймов в работе веб-шлюза ИРБИС]]). |
* <tt>P21DBN</tt> – имя базы данных. | * <tt>P21DBN</tt> – имя базы данных. | ||
* <tt>Z21ID</tt> – значение параметра авторизации. | * <tt>Z21ID</tt> – значение параметра авторизации. | ||
Строка 18: | Строка 18: | ||
===Команды шлюза=== | ===Команды шлюза=== | ||
− | Значение параметра <tt>C21COM</tt> определяет команду, которую должен выполнить веб-шлюз | + | Значение параметра <tt>C21COM</tt> определяет команду, которую должен выполнить веб-шлюз ИРБИС. |
− | '''Таблица.''' Команды веб-шлюза | + | '''Таблица.''' Команды веб-шлюза ИРБИС. |
{| | {| | ||
| | | | ||
Строка 44: | Строка 44: | ||
|} | |} | ||
− | Механизм составления веб-шлюзом | + | Механизм составления веб-шлюзом ИРБИС ответа клиенту отличается в зависимости от формы ответа. В веб-ИРБИС принята практика, в соответствии с которой веб-шлюз ИРБИС генерирует HTML-страницу с помощью фреймов. При составлении ответа, не являющегося HTML-страницей, веб-шлюз ИРБИС фреймы не использует. |
Фреймы являются файлами в особом формате и могут включать в себя элементы языка форматирования. | Фреймы являются файлами в особом формате и могут включать в себя элементы языка форматирования. | ||
− | В ответ на команды '''F''', '''S''', '''T''', '''Z''', '''R''' веб-шлюз | + | В ответ на команды '''F''', '''S''', '''T''', '''Z''', '''R''' веб-шлюз ИРБИС генерирует (при помощи фреймов) и отправляет в качестве ответа клиенту HTML-страницу. Имена фреймов веб-шлюз ИРБИС считывает из файла <tt>irbis_server.ini</tt>. Каждой команде веб-шлюза ИРБИС соответствует имя параметра в файле <tt>irbis_server.ini</tt> (см. таблицу ''Команды веб-шлюза ИРБИС''). |
− | При составлении ответа на команды '''E''', '''2''', '''4''' шлюз не использует фреймы. Ответ шлюза клиенту не является HTML-страницей. Поэтому в таблице ''Команды веб-шлюза | + | При составлении ответа на команды '''E''', '''2''', '''4''' шлюз не использует фреймы. Ответ шлюза клиенту не является HTML-страницей. Поэтому в таблице ''Команды веб-шлюза ИРБИС'' отсутствует соответствующий параметр в <tt>irbis_server.ini</tt>. |
− | ===Роль фреймов в работе веб-шлюза | + | ===Роль фреймов в работе веб-шлюза ИРБИС=== |
− | Веб-шлюз | + | Веб-шлюз ИРБИС при получении команд '''F''', '''S''', '''T''', '''Z''', '''R''' выполняет следующую последовательность действий: |
* Веб-шлюз получил запрос. Запрос содержит параметры <tt>C21COM</tt>, <tt>I21DBN</tt> и другие. | * Веб-шлюз получил запрос. Запрос содержит параметры <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>I21DBN</tt>. Иными словами: с одной стороны, в качестве значения параметра <tt>I21DBN</tt> указывается имя профиля, с другой стороны, для каждого профиля в файле <tt>irbis_server.ini</tt> должна содержаться секция, имя которой совпадает с именем профиля. | ||
− | * В указанной секции файла <tt>irbis_server.ini</tt> веб-шлюз находит значение параметра, соответствующего указанной в параметре <tt>C21COM</tt> команде (см. таблицу ''Команды веб-шлюза | + | * В указанной секции файла <tt>irbis_server.ini</tt> веб-шлюз находит значение параметра, соответствующего указанной в параметре <tt>C21COM</tt> команде (см. таблицу ''Команды веб-шлюза ИРБИС''). Полученное значение должно представлять собой список фреймов. |
* Фреймы обрабатываются, и результат, представляющий собой HTML-страницу, отправляется клиенту в качестве ответа. | * Фреймы обрабатываются, и результат, представляющий собой HTML-страницу, отправляется клиенту в качестве ответа. | ||
Строка 64: | Строка 64: | ||
==Пользовательские параметры== | ==Пользовательские параметры== | ||
− | Пользовательские параметры отличаются тем, что веб-шлюз | + | Пользовательские параметры отличаются тем, что веб-шлюз ИРБИС может выполнять с ними следующие действия: |
* при получении HTTP-запроса шлюз принимает данные, переданные ему с помощью пользовательских параметров; | * при получении HTTP-запроса шлюз принимает данные, переданные ему с помощью пользовательских параметров; | ||
* в свой ответ на HTTP-запрос клиента (обычно – в генерируемую html-страницу, передаваемую клиенту) может включить набор пользовательских параметров вместе с их значениями, полученными в запросе. | * в свой ответ на HTTP-запрос клиента (обычно – в генерируемую html-страницу, передаваемую клиенту) может включить набор пользовательских параметров вместе с их значениями, полученными в запросе. | ||
− | Количество пользовательских параметров и их назначение может определяться в процессе внедрения и конфигурирования | + | Количество пользовательских параметров и их назначение может определяться в процессе внедрения и конфигурирования ИРБИС 64. |
===Применение пользовательских параметров для передачи данных между веб-страницами=== | ===Применение пользовательских параметров для передачи данных между веб-страницами=== | ||
− | Пользовательские параметры позволяют передавать данные при переходе между веб-страницами, сгенерированными Веб-шлюзом | + | Пользовательские параметры позволяют передавать данные при переходе между веб-страницами, сгенерированными Веб-шлюзом ИРБИС 64. Процесс передачи данных происходит в два этапа: 1) данные передаются на веб-шлюз в виде параметров запроса; 2) веб-шлюз передаёт данные вместе со сформированной страницей в скрытых полях форм HTML. |
===Добавление пользовательского параметра=== | ===Добавление пользовательского параметра=== | ||
Добавление пользовательского параметра осуществляется в несколько шагов: | Добавление пользовательского параметра осуществляется в несколько шагов: | ||
− | * '''добавление ''пользовательского параметра'' в [[файл | + | * '''добавление ''пользовательского параметра'' в [[Конфигурационный файл веб-шлюза ИРБИС irbis server.ini|файл инициализации шлюза <tt>irbis_server.ini</tt>]]''' |
: Необходимо добавить описание нового ''пользовательского параметра'' в настроечный файл <tt>irbis_server.ini</tt>, задав имя и метку параметра. Для этого в секции <tt>[PARAMETRS]</tt> используются ''параметры ini файла'' <tt>PARNAME_</tt> и <tt>PARTAG_</tt> (не стоит путать термины ''пользовательские параметры'' веб-шлюза и ''параметры ini файла''), где вместо знака подчёркивания ставится номер пользовательского параметра по порядку, например: | : Необходимо добавить описание нового ''пользовательского параметра'' в настроечный файл <tt>irbis_server.ini</tt>, задав имя и метку параметра. Для этого в секции <tt>[PARAMETRS]</tt> используются ''параметры ini файла'' <tt>PARNAME_</tt> и <tt>PARTAG_</tt> (не стоит путать термины ''пользовательские параметры'' веб-шлюза и ''параметры ini файла''), где вместо знака подчёркивания ставится номер пользовательского параметра по порядку, например: | ||
PARNAME2=C21COM | PARNAME2=C21COM |
Версия 14:06, 28 декабря 2009
Параметры поступают к веб-шлюзу ИРБИС 64 в форме параметров HTTP-запроса. Поступившие параметры определяют действия, которые должен выполнить шлюз.
Параметры могут приходить в шлюз по методу POST или GET.
Параметры делятся на предустановленные и пользовательские.
Предустановленные параметры шлюза
Предустановленные параметры могут использоваться для взаимодействия с шлюзом только по оговоренной методике. Набор предустановленных параметров, а также методика их использования предопределяются в процессе разработки системы ИРБИС. Параметры перечислены в таблице, там же описана методика их использования.
Основные параметры шлюза
- C21COM – команда, которую должен выполнить веб-шлюз.
- I21DBN – имя профиля. Веб-шлюз ИРБИС в соответствии с именем профиля определяет набор фреймов, из которых составит ответ клиенту. Веб-шлюз ИРБИС ищет названия фреймов в файле irbis_server.ini в секции, название которой соответствует значению параметра I21DBN (подробнее в разделе Роль фреймов в работе веб-шлюза ИРБИС).
- P21DBN – имя базы данных.
- Z21ID – значение параметра авторизации.
Команды шлюза
Значение параметра C21COM определяет команду, которую должен выполнить веб-шлюз ИРБИС.
Таблица. Команды веб-шлюза ИРБИС.
|
Механизм составления веб-шлюзом ИРБИС ответа клиенту отличается в зависимости от формы ответа. В веб-ИРБИС принята практика, в соответствии с которой веб-шлюз ИРБИС генерирует HTML-страницу с помощью фреймов. При составлении ответа, не являющегося HTML-страницей, веб-шлюз ИРБИС фреймы не использует.
Фреймы являются файлами в особом формате и могут включать в себя элементы языка форматирования.
В ответ на команды F, S, T, Z, R веб-шлюз ИРБИС генерирует (при помощи фреймов) и отправляет в качестве ответа клиенту HTML-страницу. Имена фреймов веб-шлюз ИРБИС считывает из файла irbis_server.ini. Каждой команде веб-шлюза ИРБИС соответствует имя параметра в файле irbis_server.ini (см. таблицу Команды веб-шлюза ИРБИС).
При составлении ответа на команды E, 2, 4 шлюз не использует фреймы. Ответ шлюза клиенту не является HTML-страницей. Поэтому в таблице Команды веб-шлюза ИРБИС отсутствует соответствующий параметр в irbis_server.ini.
Роль фреймов в работе веб-шлюза ИРБИС
Веб-шлюз ИРБИС при получении команд F, S, T, Z, R выполняет следующую последовательность действий:
- Веб-шлюз получил запрос. Запрос содержит параметры C21COM, I21DBN и другие.
- В файле irbis_server.ini веб-шлюз находит секцию, имя которой соответствует значению параметра I21DBN. Иными словами: с одной стороны, в качестве значения параметра I21DBN указывается имя профиля, с другой стороны, для каждого профиля в файле irbis_server.ini должна содержаться секция, имя которой совпадает с именем профиля.
- В указанной секции файла irbis_server.ini веб-шлюз находит значение параметра, соответствующего указанной в параметре C21COM команде (см. таблицу Команды веб-шлюза ИРБИС). Полученное значение должно представлять собой список фреймов.
- Фреймы обрабатываются, и результат, представляющий собой HTML-страницу, отправляется клиенту в качестве ответа.
Все предустановленные параметры
Пользовательские параметры
Пользовательские параметры отличаются тем, что веб-шлюз ИРБИС может выполнять с ними следующие действия:
- при получении 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-страницы гиперссылку, содержащую все переданные веб-шлюзу параметры.