Primeiros passos
Criando sua primeira rota
Para adicionar um novo endpoint para o serviço, primeiramente devemos criar um slice do tipo []Route
, definindo alguns atributos.
type Awesome struct {
Greeting string `json:"greeting"`
}
var awesomeRoutes = []restserver.Route{
{
URI: "awesome",
Method: "GET",
Prefix: restserver.NoPrefix,
Function: func(ctx restserver.WebContext) {
body := Awesome{Greeting: "My Awesome Colibri Project"}
ctx.JsonResponse(200, &body)
},
},
}
func main() {
colibri.InitializeApp()
// my main code
restserver.AddRoutes(awesomeRoutes)
restserver.ListenAndServe()
}
- Na linha
6
, criamos a nossa estrutura básica com as definições das rotas que serão adicionadas. - Nas linhas
7-15
, incluímos um objeto com as definições básicas, definindos os seguintes atributos:URI
: nome do recurso que será montado, no exemplo, será criada uma rotahttp://localhost:8080/awesome
Method
: método http que será utilizado para registrar a rota.Prefix
: prefixo da rota, no exemplo ficou sem prefixo. Temos também prefixo para rotas autenticadas e públicas.Function
: função que será executada nas chamadas da rota.
- Na linha
23
fazemos a inclusão das rotas no nosso serviço web utilizando o métodoAddRoutes
.
Após realizarmos todos os passos corretamente, podemos iniciar o serviço e fazer uma chamada para testar a rota com o comando abaixo:
curl -X GET http://localhost:8080/awesome
Com isso teremos o resultado abaixo:
{
"greeting": "My Awesome Colibri Project"
}