쉽고 빠른 Go 시작하기(6)

이지수·2022년 10월 22일
0

Backend Loadmap

목록 보기
12/22
post-thumbnail

Go echo

echo는 go의 웹 프레임워크 입니다.

다른 프레임워크에 비해 잘 정리된 문서로 처음 개발하는 사람들이 쉽게 따라할 수 있도록 문서가 잘 관리 되어 있고, 자신의 미들웨어를 정의하여 사용할 수 있다는 장점이 있습니다.

Setup

go get github.com/labstack/echo 명령어로 echo를 설치해줍니다.

Hello, World!

package main

import (
	"net/http"
	
	"github.com/labstack/echo/v4"
)

func main() {
	e := echo.New()
	e.GET("/", func(c echo.Context) error {
		return c.String(http.StatusOK, "Hello, World!")
	})
	e.Logger.Fatal(e.Start(":1323")) // localhost:1323
}

서버를 재시작하지 않으면 변경사항이 바로 반영되지는 않습니다. go run main.go 명렁어로 서버를 재실행 합니다.

Routing

e.POST("/users", saveUser) // 생성
e.GET("/users/:id", getUser) // 조회
e.PUT("/users/:id", updateUser) // 수정
e.DELETE("/users/:id", deleteUser) // 삭제

경로 매개변수

// e.GET("/users/:id", getUser)
func getUser(c echo.Context) error {
  	// User ID from path `users/:id`
  	id := c.Param("id")
	return c.String(http.StatusOK, id)
}
// http://localhost:1323/users/id

쿼리 매개변수

//e.GET("/show", show)
func show(c echo.Context) error {
	// Get team and member from the query string
	team := c.QueryParam("team")
	member := c.QueryParam("member")
	return c.String(http.StatusOK, "team:" + team + ", member:" + member)
}

// http://localhost:1323/show?team=team&member=member

echo는 초기 세팅을 할 것이 거의 없기때문에 자세한 echo의 기능들은 공식문서를 참고하면 좋을 것 같습니다.

0개의 댓글