HTTP — различия между версиями
Материал из Pro-Pawn Wiki
(Новая страница: «{{Description | Отправляет HTTP-запрос (в отдельном потоке). }} {{Params|index, type, url[], data[], callback[]}} {{Param | index…») |
|||
Строка 21: | Строка 21: | ||
{{Param | {{Param | ||
| callback[] | | callback[] | ||
− | | Название функции, которая будет вызвана после выполнения запроса. | + | | Название [[Обработчик HTTP-запросов | функции-обработчика]], которая будет вызвана после выполнения запроса. |
}} | }} | ||
{{Returns | {{Returns | ||
Строка 39: | Строка 39: | ||
} | } | ||
+ | // Вместо "MyHttpResponse" можно задать функции любое другое название, | ||
+ | // главное не забыть указать то же самое название в вызове функции HTTP(). | ||
forward MyHttpResponse(index, response_code, data[]); | forward MyHttpResponse(index, response_code, data[]); | ||
public MyHttpResponse(index, response_code, data[]) | public MyHttpResponse(index, response_code, data[]) | ||
Строка 54: | Строка 56: | ||
} | } | ||
</pawn> | </pawn> | ||
+ | {{SeeAlso}} | ||
+ | * [[Обработчик HTTP-запросов]] | ||
[[Категория:Функции SA-MP]] | [[Категория:Функции SA-MP]] |
Текущая версия на 09:29, 2 марта 2019
Описание:
Отправляет 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);
}
См. также: