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();
});
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');
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));
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)