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.
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.
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)
}
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).Agora vamos ver o resultado no navegador. Siga os passos abaixo:
Ctrl + C.go run main.go
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: