Lección 5 de 45 10 min de lectura

Rutas básicas

Las rutas son el punto de entrada a tu aplicación. Definen qué URLs están disponibles y qué código se ejecuta cuando un usuario las visita. En esta lección aprenderás a crear tus primeras rutas en Laravel.

¿Qué es una ruta?

Una ruta conecta una URL con el código que debe ejecutarse. Cuando un usuario visita /contacto, Laravel busca qué ruta coincide y ejecuta el código asociado.

Todas las rutas web se definen en el archivo routes/web.php. Ábrelo y verás algo así:

php
<?php

use Illuminate\Support\Facades\Route;

Route::get('/', function () {
    return view('welcome');
});

Esta es la ruta que muestra la página de bienvenida de Laravel cuando visitas la raíz del sitio (/).

Tu primera ruta

Vamos a crear una ruta simple. Añade esto al final del archivo routes/web.php:

php
Route::get('/hola', function () {
    return 'Hola mundo';
});

Ahora visita http://localhost:8000/hola en tu navegador. Verás el texto "Hola mundo".

Sin recargar el servidor

No necesitas reiniciar el servidor de desarrollo. Los cambios en las rutas se aplican automáticamente.

Anatomía de una ruta

Cada ruta tiene tres partes:

php
Route::get('/hola', function () {
    return 'Hola mundo';
});

// Route::get  → Método HTTP (GET, POST, PUT, DELETE...)
// '/hola'     → La URL que activa esta ruta
// function    → El código que se ejecuta

Métodos HTTP

Laravel soporta todos los métodos HTTP. Los más comunes son:

php
Route::get('/usuarios', function () {
    return 'Listado de usuarios';
});

Route::post('/usuarios', function () {
    return 'Crear usuario';
});

Route::put('/usuarios/1', function () {
    return 'Actualizar usuario';
});

Route::delete('/usuarios/1', function () {
    return 'Eliminar usuario';
});
  • GET - Obtener información (páginas, datos)
  • POST - Enviar información (formularios)
  • PUT/PATCH - Actualizar información
  • DELETE - Eliminar información

Devolver HTML

Puedes devolver HTML directamente desde una ruta:

php
Route::get('/saludo', function () {
    return '<h1>Bienvenido</h1><p>Esta es mi primera página.</p>';
});

Sin embargo, para páginas reales usaremos vistas de Blade (lo veremos más adelante).

Devolver JSON

Para APIs o respuestas de datos, devuelve un array y Laravel lo convertirá a JSON automáticamente:

php
Route::get('/api/usuario', function () {
    return [
        'nombre' => 'Juan',
        'email' => 'juan@ejemplo.com'
    ];
});

Visita /api/usuario y verás la respuesta JSON en el navegador.

Ver todas las rutas

Puedes listar todas las rutas de tu aplicación con Artisan:

bash
php artisan route:list

Esto muestra una tabla con todas las rutas definidas, sus métodos y sus acciones.

Ejercicios

Ejercicio 1: Crear rutas básicas

Crea tres rutas: /inicio que devuelva "Página de inicio", /about que devuelva "Sobre nosotros", y /contacto que devuelva "Contáctanos".

Ejercicio 2: Ruta con HTML

Crea una ruta /perfil que devuelva HTML con un título h1 y un párrafo con tu nombre.

Ejercicio 3: Ruta JSON

Crea una ruta /api/productos que devuelva un array JSON con 3 productos (cada uno con id, nombre y precio).

Resumen

En esta lección aprendiste:

  • Las rutas conectan URLs con código PHP
  • Se definen en routes/web.php
  • Route::get() responde a peticiones GET
  • Puedes devolver texto, HTML o JSON
  • php artisan route:list muestra todas las rutas

En la siguiente lección aprenderás a usar parámetros en las rutas para crear URLs dinámicas.

¿Te está gustando el curso?

Tenemos cursos premium con proyectos reales, soporte personalizado y certificado.

Descubrir cursos premium