DEV Community

Lucien Risso Correia
Lucien Risso Correia

Posted on

1 1 1

Laravel - Parte 1

Ciclo de requisição básico

Partindo do básico é necessário conhecer o básico de dois conceitos: route e controller.

Route

Route, ou se preferir chamar de rota mesmo é onde se cria as rotas HTTP, definindo sua assinatura, método HTTP e a resposta. Na pasta 'routes' existem quatro arquivos php: 'api.php', 'channels.php', 'console.php', 'web.php'. Numa aplicação poderá ter vários desses para organizar as rotas, mas como por enquanto é somente o básico vamos ficar somente no 'api.php'.

Na versão 10 esse arquivo vem como o seguinte código:

<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider and all of them will
| be assigned to the "api" middleware group. Make something great!
|
*/

Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});
Enter fullscreen mode Exit fullscreen mode

Em resumo essa rota possui um middleware do sanctum (package de autenticação) que retorna o usuário autenticado. Por enquanto deixaremos de lado e pra não confundir apagaremos esse trecho.

Para definir rotas simples o Laravel possui a classe 'Route' juntamente com os métodos que definem o método HTTP da rota, seguindo os mesmos nomes 'get', 'post', 'put', 'patch', 'delete'.
Cada um desses métodos recebe como primeiro parâmetro a assinatura da rota e como segundo parâmetro um callback.

Assim podemos criar um endpoint '/hello-world' GET:

Route::get('/hello-world', fn () => 'Hello World');
Enter fullscreen mode Exit fullscreen mode

Com isso teremos um retorno de um texto 'Hello World' ao chamar a rota.

Response

Até a parte anterior foi possível retornar algo simples como um texto com status code 200. Já adiantando um próximo assunto vou deixar como retornar qualquer coisa definindo o status code HTTP:

Route::get('/error-500', fn () => response('ERRO!!!', 500));
Enter fullscreen mode Exit fullscreen mode

O código acima utilizou a função 'response', um helper do Laravel para facilitar o retorno da classe de Response do framework. Com esse helper podemos definir o retorno e em seguida como segundo parâmetro o status code HTTP desse retorno, que no exemplo foi 500 de erro no servidor.

Para finalizar a parte básica de rotas vou deixar um link da documentação da Mozilla de Status Code HTTP que utilizaremos adiante.

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more