Realización de solicitudes HTTP con cURL
Utilice cURL para realizar solicitudes GET y POST a API externas.
Realización de solicitudes HTTP con cURL es una lección gratuita de PHP Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de PHP Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de PHP Academy incluye 4 lecciones en total.
¿Qué es cURL?
cURL es una biblioteca para transferir datos mediante URL. PHP la integra mediante las funciones curl_*, lo que la convierte en la forma estándar de llamar a API externas.
Solicitud GET básica
Inicialice un handle de cURL, configure las opciones, ejecútelo y ciérrelo.
<?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
Sin esta opción, curl_exec() muestra la respuesta directamente. Establézcala en true para capturar la respuesta en una variable.
Solicitud POST
Establezca CURLOPT_POST y CURLOPT_POSTFIELDS para realizar una solicitud 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);Configuración de cabeceras
Pase un array de cadenas de cabecera a CURLOPT_HTTPHEADER.
<?php
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer ".$token,
"Accept: application/json",
]);Obtención del código de estado HTTP
Obtenga el código de estado de la respuesta después de curl_exec() con curl_getinfo().
<?php
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo $statusCode; // 200, 404, 500, etc.Gestión de errores
Compruebe curl_errno() y curl_error() para detectar e informar de errores de conexión.
<?php
if (curl_errno($ch)) {
echo "cURL error: ".curl_error($ch);
}
curl_close($ch);Opciones de tiempo de espera
Establezca tiempos de espera para la conexión y la ejecución a fin de evitar que las solicitudes se queden bloqueadas.
<?php
curl_setopt_array($ch, [
CURLOPT_CONNECTTIMEOUT => 5, // seconds to connect
CURLOPT_TIMEOUT => 15, // max total seconds
]);Seguimiento de redirecciones
Active el seguimiento automático de redirecciones con CURLOPT_FOLLOWLOCATION.
<?php
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);Verificación de SSL
De forma predeterminada, cURL verifica los certificados SSL. Nunca desactive la verificación en producción; hágalo únicamente durante el desarrollo local con certificados autofirmados.
<?php
// Development only — NEVER in production!
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt_array()
Utilice curl_setopt_array() para establecer varias opciones en una sola llamada; es más limpio que repetir llamadas a curl_setopt().
Resumen
cURL es el cliente HTTP estándar de PHP. Establezca siempre CURLOPT_RETURNTRANSFER, compruebe los errores con curl_errno y cierre siempre los handles con curl_close.
Comprobación rápida
¿Qué opción captura la respuesta de cURL en una variable?
Preguntas frecuentes
¿La lección «Realización de solicitudes HTTP con cURL» es gratis?
Sí — el texto completo de «Realización de solicitudes HTTP con cURL» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de PHP Academy, actualiza a CoddyKit PRO. El curso de PHP Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Realización de solicitudes HTTP con cURL»?
Utilice cURL para realizar solicitudes GET y POST a API externas. Practicas PHP Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar PHP Academy?
No se requiere experiencia previa. PHP Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Realización de solicitudes HTTP con cURL»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de PHP Academy?
Sí. Cada lección de PHP Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Codificación y decodificación JSON
- Realización de solicitudes HTTP con cURL
- Gestión de respuestas y errores de API
- Construcción de un cliente de API sencillo