go http server 예제

작성자:CodeSnippets
언어:
Go
16 조회
0 즐겨찾기
2시간 전

코드 구현

Go
package main

import (
    "fmt"
    "net/http"
)

func helloHandler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "<h1>Hello, World!<h1>")
}

func main() {
    http.HandleFunc("/", helloHandler)
    http.ListenAndServe(":80", nil)
}

본 예제는 Go 언어 기반의 가장 기본적인 HTTP 서비스 코드 조각을 제공합니다. Go 언어에서 net/http 패키지는 HTTP 서버 구축에 필요한 모든 도구를 제공합니다. HTTP 서버는 HTTP 요청을 수신하고 HTTP 응답을 반환할 수 있는 소프트웨어입니다. 일반적으로 웹 서버에서 실행되어 클라이언트로부터의 요청을 처리하고, 요청 내용에 따라 해당 리소스나 데이터를 반환합니다.

#HTTP

스니펫 설명

코드 분석

  • 패키지 가져오기: fmt 패키지와 net/http 패키지를 가져옵니다. fmt는 형식화된 출력에 사용되며, net/http는 HTTP 요청과 응답을 처리하는 데 사용됩니다.
  • 핸들러 함수 정의: helloHandler는 핸들러 함수로, 두 개의 매개변수(http.ResponseWriter 와 *http.Request)를 받습니다. http.ResponseWriter는 클라이언트에 응답을 보내는 데 사용되고, *http.Request에는 클라이언트 요청에 관한 모든 정보가 포함됩니다.
  • 라우트 등록: **http.HandleFunc("/", helloHandler)**는 루트 경로 "/"helloHandler 함수를 바인딩합니다. 클라이언트가 루트 경로에 접근하면 서버는 helloHandler 함수를 호출하여 요청을 처리합니다.
  • HTTP 서버 시작: **http.ListenAndServe(":80", nil)**은 서버를 시작하고 80번 포트에서 대기합니다. nil은 기본 멀티플렉서(DefaultServeMux)를 사용함을 의미합니다.

실행 방법

위 코드를 main.go로 저장한 후, 터미널에서 다음 명령어를 실행합니다:

go run main.go

브라우저를 열고 http://localhost:80 에 접속하면 페이지에 "Hello, World"가 표시됩니다.

댓글

로딩 중...