Você está aqui: Laravel ::: Dicas & Truques ::: Route

Como declarar e usar rotas POST no Laravel usando Route::post()

Quantidade de visualizações: 5054 vezes
As requisições POST são usadas quando queremos enviar dados de um formulário e não queremos que tais dados sejam vistos na URL (no endereço do navegador). É claro que há situações nas quais os dados deverão ser vistos na URL. Um exemplo disso são os resultados de uma pesquisa a um banco de dados e que poderão ser guardados no favoritos do navegador ou revisitados a partir do histórico.

Porém, na maioria das vezes, os dados vindos dos formulários são recebidos no Laravel por meio do método POST, e a classe Route facilita o nosso trabalho por meio do método post(). Vamos ver um exemplo.

Considere as duas rotas abaixo: a primeira vai nos enviar para um formulário contendo apenas uma caixa de texto. Quando digitarmos alguma coisa nessa caixa de texto e pressionarmos o botão Enviar, a informação será enviada para a segunda rota, a saber: a rota POST.

Vamos começar com o código para as duas rotas (colocado no arquivo web.php no diretório routes):

<?php

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

// mostra o form de cadastro
Route::get('/cadastrar', function(){
  return view('cadastrar'); 
});

// obtém os dados do formulário
Route::post('/gravar', function(Request $request){
  return "Valor informado na caixa de texto: " . 
    $request->get('nome'); 
});

?>

A rota chamada cadastrar é do tipo GET e apenas exibe a view cadastrar.blade.php. A segunda rota possui o nome gravar e apresenta como parâmetro um objeto da classe Request. Dentro do corpo da função anônima nós obtemos o valor digitado no campo do formulário usando $request->get().

Veja o código completo para a view que contém o formulário:

<html>
<head>
  <meta charset="utf-8">
  <title>Cadastro</title>
</head>
<body>

<form action="gravar" method="post">
@csrf
  <b>Seu nome:</b><br>
  <input type="text" name="nome" id="nome"
    placeholder="Nome">
  <button type="submit">Gravar</button>
</form>

</body>
</html>

Execute o exemplo pela URL http://localhost/exemplos/public/cadastrar e digite "Arquivo de Códigos" na caixa de texto. Quando você clicar o botão Gravar, você verá o seguinte resultado:

Valor informado na caixa de texto: Arquivo de Códigos

Aqui nós estamos apenas imprimindo um texto na rota POST. Em geral nós pegamos os valores vindos do formulário e os fornecemos para um controller que, por sua vez, poderá instanciar um determinado model, gravar as informações em um banco de dados, em um arquivo, etc.

Para saber mais sobre models e controllers, veja nossas dicas nas referidas seções.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Laravel

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 17 usuários muito felizes estudando em nosso site.