더북(TheBook)

8.2 첫 번째 웹 애플리케이션

다음은 net/http 패키지가 제공하는 함수이다. net/http 패키지에 관한 자세한 내용은 Go 공식 문서를 참고하기 바란다.

func ListenAndServe(addr string, handler http.Handler) error
웹 서버를 구동하고 웹 요청을 받아 처리한다. 웹 요청을 처리할 핸들러를 전달하지 않으면 http.DefaultServeMux가 동작한다.

func HandleFunc(pattern string, handler func(http.ResponseWriter, *http.Request))
URL별로 요청을 처리할 핸들러 함수를 등록한다.

func Handle(pattern string, handler http.Handler)
URL별로 요청을 처리할 핸들러를 등록한다.

func ServeFile(w http.ResponseWriter, r *http.Request, name string)
웹 요청에 대한 응답으로 특정 경로의 파일 내용을 전달한다.

이 함수들을 사용하여 웹 애플리케이션을 만들어 볼 것이다. 먼저 / 경로로 접속했을 때 welcome!을 출력하는 첫 번째 웹 애플리케이션을 작성해 보자.

▼ main.go

package main
 
import (
    “fmt”
    “net/http”
)
 
func main() {
    // “/” 경로로 접속했을 때 처리할 핸들러 함수 지정
    http.HandleFunc(”/”, func(w http.ResponseWriter, r *http.Request) {
        // “welcome!” 문자열을 화면에 출력
        fmt.Fprintln(w, “welcome!”)
    })
 
// 8080 포트로 웹 서버 구동 http.ListenAndServe(“:8080”, nil) }

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