HTTP
Материал из Pro-Pawn Wiki
Описание:
Отправляет HTTP-запрос (в отдельном потоке).
Параметры:
(index, type, url[], data[], callback[]) |
index | Индекс, передаваемый в автовызываемую функцию (см. прим.) |
type | Тип запроса. |
url[] | Адрес (URL), по которому будет отправлен запрос (без префикса "http://" ).
|
data[] | Данные (закодированные в виде строки), отправляемые в POST-запросе. |
callback[] | Название функции-обработчика, которая будет вызвана после выполнения запроса. |
Возвращаемое значение:
1
при успешном выполнении, либо 0
, если не удалось отправить запрос.
Пример использования:
CMD:http(playerid, params[])
{
HTTP(playerid, HTTP_GET, "pawn-lang.org", "", "MyHttpResponse");
return SendClientMessage(playerid, -1, "Запрос отправлен.");
}
// Вместо "MyHttpResponse" можно задать функции любое другое название,
// главное не забыть указать то же самое название в вызове функции HTTP().
forward MyHttpResponse(index, response_code, data[]);
public MyHttpResponse(index, response_code, data[])
{
new string[144];
// Если HTTP-запрос совершился успешно (код 200), выведем ответ сайта, иначе - сообщим код ошибки.
if (response_code == 200)
format(string, sizeof(string), "Ответ сайта: %s", data);
else
format(string, sizeof(string), "Неудача; запрос завершился с кодом %d", response_code);
// В параметре index содержится ID игрока, который был передан 1-м параметром в вызове HTTP().
return SendClientMessage(index, -1, string);
}
{
HTTP(playerid, HTTP_GET, "pawn-lang.org", "", "MyHttpResponse");
return SendClientMessage(playerid, -1, "Запрос отправлен.");
}
// Вместо "MyHttpResponse" можно задать функции любое другое название,
// главное не забыть указать то же самое название в вызове функции HTTP().
forward MyHttpResponse(index, response_code, data[]);
public MyHttpResponse(index, response_code, data[])
{
new string[144];
// Если HTTP-запрос совершился успешно (код 200), выведем ответ сайта, иначе - сообщим код ошибки.
if (response_code == 200)
format(string, sizeof(string), "Ответ сайта: %s", data);
else
format(string, sizeof(string), "Неудача; запрос завершился с кодом %d", response_code);
// В параметре index содержится ID игрока, который был передан 1-м параметром в вызове HTTP().
return SendClientMessage(index, -1, string);
}
См. также: