Обработчик HTTP-запросов
Материал из Pro-Pawn Wiki
Описание:
Вызывается при завершении HTTP-запроса. Данная функция не имеет конкретного названия, т.к. оно указывается пользователем (см. пример).
Параметры:
(index, response_code, data[]) |
index | Индекс, указанный 1-м параметром в вызове функции HTTP() .
|
response_code | Код ответа на HTTP-запрос. Помимо общепринятых кодов в SA-MP также различаются дополнительные:
|
data[] | Данные, полученные в ответ на запрос. |
Возвращаемое значение:
Возвращаемое значение не обрабатывается сервером.
Пример использования:
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);
}
См. также: