4 - Criar rota

Com o nosso servidor de pé, o próximo passo é fazê-lo responder a pedidos reais. Nesta aula, vamos aprender a mapear um caminho (rota) e criar uma função que devolve uma mensagem de boas-vindas diretamente para quem acessar o nosso sistema.

O que vamos construir?

Para criar uma rota em Go, precisamos de duas coisas: definir o caminho que o usuário vai acessar (ex: /) e associar esse caminho a uma função manipuladora (conhecida como Handler), que será responsável por processar o pedido e gerar a resposta.

Passo 1: Atualizando o arquivo main.go

Abra o seu arquivo main.go e atualize o código existente para que ele fique exatamente como na estrutura abaixo. Nós adicionamos a função helloWorld e a configuração da rota dentro da função principal:

// Pacote principal da aplicação
package main

// Importações dos pacotes nativos
import (
	"fmt"
	"net/http"
)

// Função que processa a requisição e retorna um Hello World!
// O parâmetro 'w' serve para enviar a resposta e o 'r' contém os dados da requisição
func helloWorld(w http.ResponseWriter, r *http.Request) {
	fmt.Fprintln(w, "Hello World!")
}

// Função principal
func main() {

	// Configuração de rotas: associa a rota raiz "/" à função helloWorld
	http.HandleFunc("/", helloWorld)

	// Exibe uma mensagem no terminal informando o funcionamento do servidor
	fmt.Println("Servidor em execução no endereço: http://localhost:8080")

	// Configura e inicia o servidor HTTP na porta 8080
	http.ListenAndServe(":8080", nil)

}

Entendendo o Código

  • http.HandleFunc("/", helloWorld): Informa ao Go que, sempre que alguém acessar a raiz do nosso site (/), ele deve executar a função helloWorld.
  • w http.ResponseWriter: É através desta variável que nós "escrevemos" a resposta de volta para o cliente (navegador).
  • r *http.Request: Contém todos os detalhes do pedido feito pelo cliente, como parâmetros, cabeçalhos e informações do navegador.
  • fmt.Fprintln(w, "Hello World!"): Uma variação do Println que, em vez de exibir o texto no terminal, envia a mensagem diretamente dentro da resposta HTTP (w).

Passo 2: Testando a sua nova rota

Agora vamos ver o resultado no navegador. Siga os passos abaixo:

  • Se o seu servidor antigo ainda estiver rodando no terminal, pare ele pressionando as teclas Ctrl + C.
  • Inicie o servidor novamente digitando o comando:
go run main.go
  • Abra o seu navegador de internet de preferência (Chrome, Firefox, Edge).
  • Na barra de endereços, digite: http://localhost:8080 e pressione Enter.

Pronto! Você verá a mensagem "Hello World!" impressa diretamente na sua tela, confirmando que a sua primeira rota da API está funcionando perfeitamente.

Você pode acompanhar cada etapa descrita acima no vídeo a seguir: