Параметры  Web- страницы

Когда пришел GET или  POST  запрос из сети Интернет,  в нем указана Web- страница, которая будет активирована.

Сервер активирует ее для выполнения всех команд записанных в ней, и передает ей сведения о запросе. Алгоритму который  Вы написали для этой страницы,  необходимо эти сведения использовать для формирования правильного  ответа на запрос и создания правильного дизайна страницы.

Для каждой web-страницы сервер создает две важные переменные  хранящие наборы данных полученных из запроса (Эти переменные в обычной задаче не существуют):

Переменная  REQUEST содержит список троек  характеризующих данные запроса (переменные запроса) {Имя, Тип, Значение}.

Переменная  COOKIE содержит список принятых от клиента cookie типа {Имя, время_действия, Значение, домен}.

Получить нужный параметр  из этих переменных можно по имени параметра:

REQUEST[«File_name»]

Получить, например, значение этого параметра, можно обычным способом:

REQUEST[«File_name»].value

Список свойств страницы которые позволяют узнать о параметрах запроса к ней:

task.HttpMethod  — выдает тип запроса (NULL, GET, POST) . NULL — будет выдано если это не страница а обычная задача.

task.HasData   — выдает true если к запросу присоединены данные которые можно прочитать командой task.UpLoad()

task.HasCook  — выдает true если к запросу присоединены файлы  cookie

task.UpLoad   — принимает файл в папку «www/files» и возвращает его имя, или возвращает имя текстовой переменной для принятого текста. Получить значение принятого текста можно командой REQUEST[Имя].value

task.loadPOSTData — позволяет прочитать текстовые данные полученные  из ajax-POST запроса. Данные читаются в обычный список REQUEST

Следующие команды позволяют проверить наличие параметра по его имени (был ли параметр прислан в запросе):

REQUEST.Contins(Имя) —  возвращает true если параметр имеется.

COOKIE.Contins(Имя) —  возвращает true если параметр имеется.

 

Пример «Загрузка файла на сервер»:

В следующем примере динамически формируется одно из двух отображений страницы. Первый раз, когда файл от клиента не передан, алгоритм с помощью HTML кода рисует интерфейс выбора файла на компьютере клиента (можно выполнить и двумя командами Friend). Затем, когда клиент посылает файл, эта же страничка выполняет запись файла, и показывает в текстовом окошке имя принятого файла.

if(task.HasData)
{
  task.UpLoad -> a
  text(«txt1»,REQUEST[a].Value)
}
else
{
  Echo( «<form action=’http://localhost:8080/index.frd’ method=’post’ enctype=’multipart/form-  data’>
<input type=’file’ name=’filename’><br>
<input type=’submit’ value=’Загрузить’><br>
</form> « )
}