HTTP PT
From SA-MP Wiki
HTTP
Descrição:
Envia uma solicitação HTTP threaded.
(index, type, url[], data[], callback[])
index | Id usado para diferenciar as requisições que são enviadas (é muito usado o id de um jogador) |
type | O tipo da requisição que vai ser enviada. |
url[] | A url que vai ser enviada a requisição. (Sem 'http://') |
data[] | Todos os dados do POST que deseja enviar. |
callback[] | O nome da callback que deseja chamar para passar os dados da requisição. |
Valores de retorno:
1 se houver sucesso, 0 se falhar
Tipos de requesição
HTTP_GET - Envia uma requisição HTTP padrão.
HTTP_POST - Envia uma requisição HTTP com dados via POST.
HTTP_HEAD - Envia uma requisição padrão, mas ignora qualquer dado de resposta (retornando somente o código de resposta).
Códigos de resposta
HTTP_ERROR_BAD_HOST 1 HTTP_ERROR_NO_SOCKET 2 HTTP_ERROR_CANT_CONNECT 3 HTTP_ERROR_CANT_WRITE 4 HTTP_ERROR_CONTENT_TOO_BIG 5 HTTP_ERROR_MALFORMED_RESPONSE 6
Nota | Além dos códigos de resposta acima, há todas as respostas HTTP padrões como: 404 (página não encontrada), 500 (erro do servidor), 403 (acesso proibido). |
Exemplo de uso:
forward SampResponse(index, response_code, data[]); public OnPlayerCommandText(playerid, cmdtext[]) { if(!strcmp("/sa-mp",cmdtext,true)) { HTTP(playerid, HTTP_GET, "sa-mp.com/return.txt", "", "SampResponse"); return 1; } return 0; } public SampResponse(index, response_code, data[]) { new buffer[ 128 ]; if(response_code == 200) //Verifica se houve sucesso na requisição { format(buffer, sizeof(buffer), "A resposta foi: %s", data); SendClientMessage(index, 0xFFFFFFFF, buffer); } else { format(buffer, sizeof(buffer), "A requisição falhou! O código de resposta foi: %d", response_code); SendClientMessage(index, 0xFFFFFFFF, buffer); } }