Nesta aula nós aprendemos a baixar o pacote gorilla/mux.
Podemos usar o gorilla/mux para definir o roteamento dos endpoints da API de maneira mais conveniente.
Resumo da Aula sobre Golang e Gorilla Mux
Introdução
Nesta aula, o instrutor continua a desenvolver uma API em formato JSON usando Golang. O foco é introduzir o pacote Gorilla Mux, que auxilia na definição de rotas de forma mais conveniente.
O que é Gorilla Mux?
Gorilla Mux é um pacote que ajuda a criar rotas de maneira simplificada, reduzindo a quantidade de código necessário para lidar com rotas e parâmetros. O pacote pode ser encontrado no GitHub: Gorilla Mux.
Instalação do Pacote
Para usar o Gorilla Mux, o instrutor demonstra como instalá-lo via terminal, utilizando o comando:
go get github.com/gorilla/mux
Após a instalação, ele verifica se o pacote foi baixado corretamente na estrutura de diretórios de Go.
Modificações no Código
Criando o Roteador
Testando as Alterações
Antes de finalizar, o instrutor comenta algumas partes do código existente para testar as novas rotas implementadas. Ele utiliza o Postman para verificar se a rota retorna a resposta esperada.
Recapitulação
Ao final da aula, o instrutor resume os passos:
- Instalação do Gorilla Mux com
go get.
- Importação do pacote no código.
- Criação de um novo roteador.
- Substituição das rotas na função de configuração para usar o novo roteador no lugar do manejador padrão.
Conclusão
O instrutor encerra a aula mencionando que o Gorilla Mux foi configurado com sucesso e agradece a presença dos espectadores, prometendo mais conteúdos na próxima aula.
Olá pessoal estamos de volta com mais uma aula de Golang vamos continuar
a nossa API em formato JSON. Nesta aula vou falar de como usar esse pacote
Gorilla Mugs para poder você redefinir as rotas de uma maneira mais
conveniente a facilitar a criação de rotas sem a gente ter que escrever muita
coisa como a gente já fez antes
então aqui a página do pacote gethub.com.gorilla.mugs
g-o-r-i-l-r-a bar m-u-x
pode ver aqui tem a descrição do readme leia me pode ver e tal e tal e tal tá
então vamos aqui de volta ao nosso código fonte vai abrir meu editor de texto
o arquivo é o main.go a gente escreveu as coisas aqui vamos dar uma olhada no que a gente tem aqui
então as coisas aqui por exemplo lá no rotiá livros
lembra tem várias tem essas a escrever essas várias coisas que para poder lidar com os
tipos de rota com a barra e os idês do livro e tal e tal e tal então tem muita
coisa que a gente escreveu aqui só para poder fazer isso isso é o método geth for o método post e tal e tal
então com Gorilla Mugs nós vamos eliminar muita coisa aqui para não precisar lidar com esse length
e os idês e tal tá então o que que vai acontecer aqui embaixo se eu rolar aqui
por exemplo do livro aqui eu vou poder definir um parâmetro de rota por exemplo
id do livro e o id aqui dentro da própria rota por exemplo usando Gorilla Mugs e eu
vou poder definir o método por exemplo eu quero que esse vá para o método get né então eu defino
uma rota que vai bater exatamente aqui com o id incluir o método que você get para poder
chamar a certa função a gente vai mudar tudo isso tá bom então para poder fazer isso precisamos do
pacote Gorilla Mugs então primeiro de tudo temos que obter esse pacote porque é escrito por outra
pessoa não é o nosso não é pacote padrão da linguagem então o endereço já de dei lá no
navegador e a de robocom barra Gorilla bar Mugs a gente vai usar esse endereço aqui para poder fazer o
gol get para poder obter código fonte vamos lá no terminal aqui estou na parte do projeto nós que
tem um meio ponto gol falar gol get pra sou e gdh com a barra Gorilla bar Mugs então vamos olhar
aqui no gol pav aqui se lembra o gol pav eu tenho um src essa parte que tem o código fonte do
pacote então gdh ponto conta aqui temos negócios aqui até eu já baixei o gorilla max né eu vou
fazer isso de novo para você ver depois de você dar o gol get traço e o local do pacote que tá no
github eu vou olhar aqui no gol pav barra src barra gdh ponto com golila barra max então aquele
gol lá do repositório já tá aqui no seu computador local né com isso a gente ver aqui vamos ver se
ele já criou executável src vim
e o mux ponto a tá no pkg e qualquer maneira vamos voltar aqui então a gente instalou lá temos
acesso ao gorilla max vamos lá de texto aqui lá em cima para poder importar o gorilla max então
vamos em port e vou adicionar mais uma entrada vai ser do abriás para os github ponto com barra
gorilla com dois l's barra mux com isso a gente já tem o pacote que disponiu agora vamos fazer o
pkg onde você tiver com esse lado da definição de rotas qual era a função
a
e para configurar rotas lá no configurar rotas essa função que dá os que lida com todos os
handlers né o handel funk vão fazer o seguinte a gente vai criar o chamado roteador do mox então
o pacote mux nesse pacote tem uma função para poder criar o novo roteador essa função tem nome
new router o nlm osc e o rlm o r r r da chama essa função essa função vai retornar um roteador
vou chamar aqui na variável roteador dois pontos igual tá agora toda vez que você vê a tpq ponto
do funk você vai substituir a tpq com o roteador então tiver a tpq vou selecionar múltiples eu vou
substituir com o roteador
e certo
e agora que no de volta para o nível acima no configurar servidor ele tem esse chamado do
sensor na porta 1337 a nova segunda argumento aqui é a new agora a gente vai passar o segundo
argumento que vai ser o nosso a o teador né o mox
tá certo então a gente vai ter que passar o roteador de alguma maneira talvez ele pega esse
roteador aqui tem que passar aqui talvez a gente crie o roteador fora do configurar rotos para
passar ele como argumento por exemplo recortar daqui
e põe aqui na linha cento de 189 que o roteador e passa o roteador como argumento aqui
para configurar rotos configurar rotos tem o o teador agora o tipo dele eu tenho que ver na
documentação lá eu acho que a n implementa é se eu me lembro a o esse roteador aqui é do tipo
que implementa a interface http ponto serve mox então eu posso definir o tipo aqui como http
ponto serve mox vamos ver se dá certo depois eu olho na documentação para confirmar
a aqui
então o teador agora o passo roteador segundo argumento do listen and serve o teador tá
agora obviamente vai dar um problema aqui que ainda não definimos corretamente o dia
livre não modificamos deixa eu só comentar para testar os outros o testar o roteiro
principal para ver se funciona deixa eu só olhar aqui a definição bem vindo sem problemas
para testar primeiro
aqui no terminal
vou até rodar o compaio de men paila da heimão
aí vou usar traço veu de igual gol install traço comando igual a o nome aqui do executar que vai ser
do comando
então deu problema não pode usar roteador ou até aparecer o tipo aqui como tipo http serve mox
em argumento argumento ok então o tipo do roteador na verdade é ponteiro para o mox router
aí está até achando será que funciona se eu botar um ponteiro aqui
vamos ver não não funciona ainda dá aí vamos confirmar isso lá no documentação quero ver
a vamos ver aqui
qual é o tipo
só estou vendo aqui
cadê a referência deles
vamos ver no código fonte aqui mox.go pacote mox
olha aqui deu router a função que usou retorna um ponteiro para router
está certo mas que é router aqui
opa router
router é uma estrutura aqui certo
implementa olha esse comentário esse router que é o new router a função que a gente chamou
retorna o ponteiro para router router é uma estrutura aqui e ele diz que implementa a interface http
ah tá então eu errei aqui não é serve mox desculpa serve mox é o tipo do
do é o mox padrão do se a gente não usasse o gorila max então na verdade isso aqui vai ser o
handler vamos ver se funciona assim
ponteiro
ainda não funcionou ah acho que vamos voltar aqui
ah certo então o roteador
implementa a interface então pode registrar para
certo certo certo ok então
então vamos corrigir isso vamos ver lá de volta ao
roteador vai ser do tipo dentro do pacote mox tem um router aí vai ser o ponteiro vamos ver
pronto agora deu certo então como eu já vi antes o roteador do tipo ponteiro para router mas
como o router está dentro do pacote mox eu tenho que ver mox ponto aí como a gente viu aqui no código
ponte tá a gente olhou lá no próprio ponte para poder identificar qual o tipo da variável então
uma boa prática também para você fazer dar uma olhada no código ponte dos pacotes que você usa
e às vezes a gente instala esse pacote sabe nem o que é que está dentro deles né então é muito
legal você ir aqui na página e no próprio código ponte e ver qual é a função que você está
chamando o que está fazendo qual é o valor de retorno aqui esse router que é a estrutura tá e
esse router implementa a interface htp 100 e sim por diante
então vamos ver vou testar a rote deixa eu ir aqui no postman nem precisa ir no postman mas
a rota traz local host 1337 bar bem vindo apareceu tá então funcionou direitinho sem problema
e então o raco recapitular que a gente fez no sal nós baixamos lá o pacote
a de aqui a gorila mox o golgat para sul github.com barra gorila bar mox
e aí importamos aqui em cima
e depois disso a gente tem que converter a nossas rotas aqui lá no configurar hot primeiro antes
de tudo ter que criar o roteador com o mox ponto new router chama essa função o prêmio de roteador
que é do tipo que conteiro para mox router depois disso a gente passou aqui para nossa função
e configurar hot para poder usar o roteador em vez de htp você substitui substitui htp htp
randofunk com roteador randofunk aí no final de tudo aqui quando você chama o htp listener
só para poder realmente a o da servidor você põe como segundo argumento em vez de new você
vai para o próprio o roteador que foi criado
tá e com isso gorila mox vai
tá aí configurado então por essa aula é só e até a próxima
Comentários
Entre para participar da conversa.
Carregando comentários…