echo는 go의 웹 프레임워크 입니다.
다른 프레임워크에 비해 잘 정리된 문서로 처음 개발하는 사람들이 쉽게 따라할 수 있도록 문서가 잘 관리 되어 있고, 자신의 미들웨어를 정의하여 사용할 수 있다는 장점이 있습니다.
go get github.com/labstack/echo
명령어로 echo를 설치해줍니다.
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
명렁어로 서버를 재실행 합니다.
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의 기능들은 공식문서를 참고하면 좋을 것 같습니다.