0Pricing
PHP Academy · Aula

Realização de solicitações HTTP com cURL

Use cURL para realizar solicitações GET e POST a APIs externas.

Realização de solicitações HTTP com cURL é uma aula grátis de PHP Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de PHP Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de PHP Academy inclui 4 aulas no total.

O que é cURL?

cURL é uma biblioteca para transferir dados usando URLs. O PHP disponibiliza essa biblioteca por meio das funções curl_*, tornando-a a forma padrão de chamar interfaces de programação de aplicações externas.

Solicitação GET básica

Inicialize um identificador cURL, defina as opções, execute-o e feche-o.

<?php
$ch = curl_init("https://api.example.com/users");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;

CURLOPT_RETURNTRANSFER

Sem essa opção, curl_exec() exibe a resposta diretamente. Defina-a como true para capturar a resposta em uma variável.

Solicitação POST

Defina CURLOPT_POST e CURLOPT_POSTFIELDS para uma solicitação POST.

<?php
$ch = curl_init("https://api.example.com/users");
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST           => true,
    CURLOPT_POSTFIELDS     => json_encode(["name" => "Alice"]),
    CURLOPT_HTTPHEADER     => ["Content-Type: application/json"],
]);
$response = curl_exec($ch);
curl_close($ch);

Definição de cabeçalhos

Transmita uma matriz de cadeias de cabeçalho para CURLOPT_HTTPHEADER.

<?php
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ".$token,
    "Accept: application/json",
]);

Como obter o código de status HTTP

Obtenha o código de status da resposta depois de curl_exec() usando curl_getinfo().

<?php
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo $statusCode; // 200, 404, 500, etc.

Tratamento de erros

Verifique curl_errno() e curl_error() para detectar e informar erros de conexão.

<?php
if (curl_errno($ch)) {
    echo "cURL error: ".curl_error($ch);
}
curl_close($ch);

Opções de tempo limite

Defina tempos limite para a conexão e a execução a fim de impedir que as solicitações fiquem travadas.

<?php
curl_setopt_array($ch, [
    CURLOPT_CONNECTTIMEOUT => 5,  // seconds to connect
    CURLOPT_TIMEOUT        => 15, // max total seconds
]);

Seguindo redirecionamentos

Ative o acompanhamento automático de redirecionamentos com CURLOPT_FOLLOWLOCATION.

<?php
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);

Verificação de SSL

Por padrão, o cURL verifica os certificados SSL. Nunca desative essa verificação em produção; faça isso apenas no desenvolvimento local com certificados autoassinados.

<?php
// Development only — NEVER in production!
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt_array()

Utilize curl_setopt_array() para definir várias opções em uma única chamada; isso é mais organizado do que repetir chamadas de curl_setopt().

Resumo

O cURL é o cliente HTTP padrão do PHP. Sempre defina CURLOPT_RETURNTRANSFER, verifique os erros com curl_errno e sempre feche os identificadores com curl_close.

Verificação rápida

Qual opção captura a resposta do cURL em uma variável?

Perguntas Frequentes

A aula “Realização de solicitações HTTP com cURL” é grátis?

Sim — o texto completo de “Realização de solicitações HTTP com cURL” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de PHP Academy, atualize para CoddyKit PRO. O curso de PHP Academy inclui 4 aulas no total.

O que vou aprender em “Realização de solicitações HTTP com cURL”?

Use cURL para realizar solicitações GET e POST a APIs externas. Você pratica PHP Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar PHP Academy?

Nenhuma experiência prévia é necessária. PHP Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Realização de solicitações HTTP com cURL”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de PHP Academy?

Sim. Cada aula de PHP Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Codificação e decodificação JSON
  2. Realização de solicitações HTTP com cURL
  3. Tratamento de respostas e erros de APIs
  4. Criação de um cliente de API simples
← Voltar para PHP Academy