Технология Веб-ИРБИС — различия между версиями
Sokv (обсуждение | вклад) |
Sokv (обсуждение | вклад) |
||
Строка 87: | Строка 87: | ||
: Команда <tt><!FORMAT=INSERT_ALL_PARAMETERS_IN_QUERY></tt> вставляет в код HTML-страницы гиперссылку, содержащую все переданные веб-шлюзу параметры. | : Команда <tt><!FORMAT=INSERT_ALL_PARAMETERS_IN_QUERY></tt> вставляет в код HTML-страницы гиперссылку, содержащую все переданные веб-шлюзу параметры. | ||
− | [[Категория:Веб- | + | [[Категория:Веб-Ирбис]] |
[[Категория:Ирбис 64]] | [[Категория:Ирбис 64]] |
Версия 14:15, 14 декабря 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-страницы гиперссылку, содержащую все переданные веб-шлюзу параметры.