더북(TheBook)

main.go의 핸들러 함수에서 컨텍스트를 사용하도록 수정

마지막으로 핸들러 함수에서 컨텍스트를 사용하도록 수정해 보자. main.go 파일을 다음과 같이 수정한다.

▼ main.go

package main
 
import (
    “fmt”
    “net/http”
)
 
func main() {
    r := &router{make(map[string]map[string]HandlerFunc)}
 
r.HandleFunc(“GET”, ”/”, func(c *Context) { fmt.Fprintln(c.ResponseWriter, “welcome!”) })
r.HandleFunc(“GET”, ”/about”, func(c *Context) { fmt.Fprintln(c.ResponseWriter, “about”) })
r.HandleFunc(“GET”, ”/users/:id”, func(c *Context) { fmt.Fprintf(c.ResponseWriter, “retrieve user %v\n”, c.Params[“id”]) })
r.HandleFunc(“GET”, ”/users/:user_id/addresses/:address_id”, func(c *Context) { fmt.Fprintf(c.ResponseWriter, “retrieve user %v’s address %v\n”, c.Params[“user_id”], c.Params[“address_id”]) })
r.HandleFunc(“POST”, ”/users”, func(c *Context) { fmt.Fprintf(c.ResponseWriter, “create user\n”) })
r.HandleFunc(“POST”, ”/users/:user_id/addresses”, func(c *Context) { fmt.Fprintf(c.ResponseWriter, “create user %v’s address\n”, c.Params[“user_id”]) })
http.ListenAndServe(“:8080”, r) }

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.