From OpenSCADAWiki
Jump to: navigation, search

Загальний сценарій запиту користувацької сторінки:

  • Зовнішня мережева станція формує HTTP запит з URI виду "/WebUser/{UserPage}", який попадає на транспорт OpenSCADA із значенням поля конфігурації "Протокол", рівного "HTTP".
  • Транспорт спрямовує запит на модуль транспортного протоколу "Protocol.HTTP".
  • Модуль транспортного протоколу спрямовує запит цьому модулю відповідно до першого елементу URI.
  • Цей модуль обирає об'єкт сторінки користувача, яка вказана у другому елементі URI.
  • Здійснюється ініціалізація змінних HTTP-протоколу для процедури сторінки:
    • HTTPreq — встановлюється у значення рядка HTTP-Методу (на кшталт "GET", "POST"), залежно від типу запиту;
    • url — адреса запитаного ресурсу (URI);
    • page — вхідний одиничний вміст і сторінка, що передається, для методу "POST";
    • sender — адреса відправника запиту;
    • user — ідентифікатор аутентифікованого користувача, якщо аутентифікація мала місце;
    • HTTPvars — розібраний перелік змінних протоколу HTTP у вигляді властивостей об'єкту;
    • URLprms — розібраний перелік параметрів URL у вигляді властивостей об'єкту;
    • cnts — розібрані елементи вмісту для POST, у Array<XMLNodeObj>, з вмістом елементів у тексті з властивостями у атрибутах XMLNodeObj.
  • Виклик процедури на виконання, яка, обробивши запит, формує вміст сторінки у "page" і результат запиту у "rez".
  • На завершення формується відповідь з кодом повернення HTTP із "rez" і вмістом із "page", а також зміненими та доповненими змінними протоколу HTTP із "HTTPvars". Для порожнього "rez" відповідь не формується!