HTTP.Submit

string HTTP.Submit ( string URL,
table Values,
number Method = SUBMITWEB_GET,
number Timeout = 20,
number Port = 80,
table AuthData = nil,
table ProxyData = nil )
Примеры

Описание

Отправляет данные на Интернет веб-сайт и возвращает ответ сервера.

Примечание: Для получения размера файла по умолчанию будут применены установки прокси по умолчанию из текущих настроек браузера Internet Explorer, которые являются рекомендуемыми. Тем не менее, если нужны другие настройки прокси, они могут быть переданы через параметр ProxyData.

Совет: Если это действие дает ошибку, можно получить подробности указанной HTTP ошибки при помощи действия HTTP.GetHTTPErrorInfo.

Параметры

URL

(строка) Полный URL-адрес к файлу, который нужно отправить.

Values

(таблица) Таблица с парами именованных значений для передачи в скрипт. Каждая пара именованного значения будет иметь вид name="value".    Например: {color="silver", make="Porsche", model="911 Turbo"}

Method

(число) Используемый метод передачи. Выбор из:

КОНСТАНТА
CONSTANT
ЗНАЧЕНИЕ
VALUE
ОПИСАНИЕ
DESCRIPTION
SUBMITWEB_GET1Для отправки данных будет использован GET метод. (По умолчанию)
SUBMITWEB_POST0Для отправки данных будет использован POST метод.

Примечание: Если вы не уверены в различиях, обратитесь к книге или веб-сайту по CGI программированию.

Примечание переводчика: CGI (от англ. Common Gateway Interface — «общий интерфейс шлюза») — стандарт интерфейса, используемого для связи внешней программы с веб-сервером. Программу, которая работает по такому интерфейсу совместно с веб-сервером, принято называть шлюзом, хотя многие предпочитают названия «скрипт» (сценарий) или «CGI-программа». CGI является одним из наиболее распространённых средств создания динамических веб-страниц.
Разница между вариантами GET и POST состоит только в том, как информация передается из формы в обрабатывающий сценарий. Метод GET посылает всю собранную информацию как часть адреса URL. Метод POST передает информацию так, что пользователь этого не видит.

Timeout

(число) Максимальное время в секундах, в течении которого действие будет ожидать ответа после попытки соединения. Значение по умолчанию равно 20.

Примечание: Значения тайм-аута интерпретируются различными способами во время связи клиента с сервером. В результате фактический тайм-аут, используемый соединением, может отличаться от указанного значения.

Port

(число) Порт для подключения. В большинстве случаев подходит значение по умолчанию, равное 80.

AuthData

(таблица) Таблица содержащая основную информацию HTTP аутентификации, которая может быть использована для получения доступа к файлу. (Этот параметр дополнительный, необязательный. Если загрузка не требует HTTP аутентификации, просто оставьте этот параметр пустым.) Таблица индексирована следующими ключами:

КЛЮЧ
KEY
ТИП
TYPE
ОПИСАНИЕ
DESCRIPTION
UserNameстрокаИмя пользователя, используемое во время HTTP аутентификации.
PasswordстрокаПароль, используемый во время HTTP аутентификации.

ProxyData

(таблица) Таблица содержащая данные о прокси-сервере пользователя. Можно передать значение nil (значение по умолчанию) для использования параметров прокси по умолчанию из текущих настроек браузера Internet Explorer (рекомендуемое), или передать таблицу определенных параметров прокси. (Возможно потребуется запрашивать эти данные у пользователя.) Таблица индексированная следующими ключами:

КЛЮЧ
KEY
ТИП
TYPE
ОПИСАНИЕ
DESCRIPTION
PUserNameстрокаИмя пользователя прокси-сервера.
PPasswordстрокаПароль прокси-сервера.
PServerAddressстрокаАдрес прокси-сервера.

Возврат

ResultVariable

(строка) Содержимое файла, возвращаемое веб-скриптом. Если происходит ошибка, возвращается пустая строка "". Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
Смотрите также: Связанные действия

Примеры

Пример 1

myvalues = {Name = "Brian", Company = "Indigo Rose"};
result = HTTP.Submit("http://www.indigorose.com/myscript.php", myvalues, SUBMITWEB_GET, 20, 80, nil, nil);
В первой строке кода создаем таблицу по имени "myvalues", содержащую две пары именованных значений. Первым индексом таблицы является "Name", и имеет связанное значение "Brian". Второй индекс это "Company" и его связанное значение "Indigo Rose". Затем пары именованных значений этой таблицы передаются в скрипт, размещенный на "http://www.indigorose.com/myscript.php" при помощи действия HTTP.Submit.

Пример 2

sResult = HTTP.Submit("http://www.mysearchengine.com/search.php", {search = "AutoPlay"}, SUBMITWEB_GET, 20, 80, nil, nil);
В этом примере передается запрос "AutoPlay" для поиска скрипта на http://www.mysearchengine.com. Параметр передается с помощью таблицы, встроенной в строку, и результаты сохраняются в переменной sResult.
Смотрите также: Связанные действия