馃挰 Respuestas JSON y controladores API
C贸mo responder correctamente en tus APIs Laravel
En una API REST, las respuestas deben estar siempre en formato JSON y acompa帽adas de un
c贸digo de estado HTTP adecuado. Laravel facilita esta tarea mediante el m茅todo
response()->json() y estructuras personalizadas.
馃摌 ¿Qu茅 es una respuesta JSON?
JSON (JavaScript Object Notation) es un formato ligero para intercambiar datos entre cliente y servidor.
Laravel puede convertir autom谩ticamente modelos, colecciones y arrays a JSON con el m茅todo
response()->json() o devolviendo directamente arrays en tus controladores API.
⚙️ Ejemplo b谩sico de respuesta JSON
Imaginemos un controlador que devuelve una lista de productos:
app/Http/Controllers/Api/ProductController.php
json([
'success' => true,
'message' => 'Lista de productos obtenida correctamente',
'data' => $products
], 200);
}
}
?>
馃З Ejemplo visual: simulador de respuesta JSON
Selecciona un tipo de respuesta para ver c贸mo Laravel devolver铆a los datos:
馃 Devolver arrays directamente
Laravel convierte autom谩ticamente los arrays o colecciones en JSON. As铆 puedes simplificar tus respuestas:
Controlador simplificado
public function show($id)
{
$product = Product::find($id);
if (!$product) {
return ['success' => false, 'message' => 'Producto no encontrado'];
}
return ['success' => true, 'data' => $product];
}
✅ Buenas pr谩cticas
- Usa
response()->json()para mayor control sobre los c贸digos HTTP. - Incluye siempre campos success y message en tus respuestas.
- Devuelve 422 en validaciones y 404 si no se encuentra un recurso.
- Evita retornar HTML desde tus controladores API.
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias