Go를 사용하여 기본 웹 서버를 구축하는 방법

Go를 사용하여 기본 웹 서버를 구축하는 방법

Go는 시스템 소프트웨어뿐만 아니라 현대적인 웹 애플리케이션을 구축하기 위한 흥미로운 프로그래밍 언어입니다. 출시 후 큰 화제를 불러일으켰으며 Docker, Kubernetes, Terraform, Dropbox 및 Netflix 와 같은 서비스를 강화했습니다 .

게다가 Go의 강력한 내장 패키지 컬렉션은 Go를 웹 프로그래밍에 탁월한 선택으로 만들어줍니다. 이 기사에서는 Go에서 기본 웹 서버를 작성하는 방법을 보여줍니다 .

필요한 패키지 가져오기

net/HTTP 패키지는 웹 서버와 클라이언트를 만드는 데 필요한 모든 것을 제공합니다. 이 패키지는 웹 프로그래밍을 처리하는 데 유용한 몇 가지 기능을 제공합니다.

소스 코드 시작 부분에 아래 줄을 추가하여 가져올 수 있습니다.

import "net/http"

또한 이 기사에서는 fmt 패키지를 사용하여 문자열 형식을 지정하고 로그 패키지를 사용하여 오류를 처리합니다. 위에 표시된 대로 개별적으로 가져오거나 단일 import 문을 사용하여 모든 패키지를 가져올 수 있습니다.

import (
"fmt"
"log"
"net/http"
)

필요한 패키지를 가져온 후 기본 함수 작성을 진행할 수 있습니다. 계속해서 .go 확장자를 사용하여 소스 파일을 저장하세요 . Vim을 사용하는 경우 아래 명령을 사용하여 Vim을 저장하고 종료하세요.

:wq server.go

주요 함수 작성

Go 프로그램은 "main"이라는 적절한 이름의 main 함수 내에 직접 상주합니다. 여기서 서버 호출을 해야 합니다 . 소스 코드에 다음 줄을 추가하고 어떤 작업을 수행하는지 확인하세요.

func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

예제에서는 func 키워드를 사용하여 main 함수를 정의합니다 . Go에는 여는 중괄호 위치에 대한 엄격한 규칙이 있으므로 시작 중괄호가 올바른 줄에 있는지 확인하세요. main의 첫 번째 문은 루트 경로( "/" )에 대한 모든 웹 요청이 http.HandlerFunc 유형의 함수인 인덱스에 의해 처리되도록 정의합니다 .

두 번째 줄은 http.ListenAndServe 함수를 통해 웹 서버를 시작합니다 . 서버의 포트 8080에서 들어오는 HTTP 요청을 지속적으로 수신하도록 서버에 신호를 보냅니다. 이 함수의 두 번째 매개변수는 프로그램을 끝까지 차단하는 데 필요합니다.

http.ListenAndServe는 항상 오류를 반환하므로 예제에서는 이 호출을 log.Fatal 호출 내부에 래핑 합니다 . 이 명령문은 서버 측에서 생성된 모든 오류 메시지를 기록합니다.

처리 기능 구현

보시다시피, 메인 함수는 핸들러 함수 인덱스를 호출하여 클라이언트 요청을 처리합니다. 그러나 예제에서는 아직 서버에 대해 이 기능을 정의하지 않았습니다.

인덱스 함수를 사용 가능하게 만드는 데 필요한 명령문을 추가해 보겠습니다.

func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}

이 함수는 http.ResponseWriterhttp.Request 유형의 두 가지 다른 인수를 사용합니다 . http.ResponseWriter 매개변수에는 수신 요청에 대한 서버의 응답이 http.Request 객체 형식으로 포함되어 있습니다 .

fmt 패키지 의 Fprintf 함수는 텍스트 문자열을 표시하고 조작하는 데 사용됩니다. 기사에서는 이를 사용하여 웹 요청에 대한 서버의 응답을 표시합니다. 마지막으로 r.URL.Path[1:] 요소는 루트 경로 다음에 데이터를 가져오는 데 사용됩니다.

나머지 부분을 모두 추가하세요.

나머지 구성 요소를 모두 추가하면 Go 웹 서버가 준비됩니다. 코드는 다음과 같습니다:

import (
"fmt"
"log"
"net/http"
)
func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}
func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

이 Go 웹 서버 코드를 실행 파일로 컴파일하려면 첫 번째 줄이 필요합니다.

Go를 사용하여 기본 웹 서버를 구축하는 방법

이 Go 웹 서버 코드를 실행 파일로 컴파일합니다.


Windows에서 무선 네트워크 어댑터의 기본 주파수 대역을 변경하는 방법

Windows에서 무선 네트워크 어댑터의 기본 주파수 대역을 변경하는 방법

이 가이드에서는 Windows 7, Windows 8 및 Windows 10에서 무선 네트워크 어댑터에 기본적으로 사용할 기본 주파수 대역(5GHz 또는 2.4GHz)을 변경하는 방법을 보여줍니다.

프로세서 선호도란 무엇입니까? Windows 10에서 프로세서 선호도를 설정하는 방법

프로세서 선호도란 무엇입니까? Windows 10에서 프로세서 선호도를 설정하는 방법

그러나 모든 코어가 아닌 1개 또는 2개의 코어만 사용하도록 프로그램을 설정하는 것도 가능합니다. 이 게시물에서 Quantrimang.com은 프로세서 선호도가 무엇인지, Windows 10에서 프로세서 선호도를 설정하는 방법을 설명합니다.

개인정보 보호 수준이 가장 낮은 VPN은 피해야 합니다.

개인정보 보호 수준이 가장 낮은 VPN은 피해야 합니다.

VPN 기술의 인기가 높아짐에 따라 범위, 방법 및 대담성이 다양한 다양한 사기가 발생했습니다.

Windows 10에서 원격으로 PC를 잠그는 방법

Windows 10에서 원격으로 PC를 잠그는 방법

Windows 10에는 장치를 추적할 수 있을 뿐만 아니라 원격으로 잠글 수도 있는 깔끔한 기능이 있습니다.

SpyHunter를 사용하여 스파이웨어를 제거하고 키로거를 방지하는 방법

SpyHunter를 사용하여 스파이웨어를 제거하고 키로거를 방지하는 방법

SpyHunter는 컴퓨터의 맬웨어, 스파이웨어 및 안티 키로거를 검색하고 파괴하는 소프트웨어입니다.

Windows 10의 새로운 하드 드라이브 용량 분석 도구인 디스크 사용량을 사용해 보세요.

Windows 10의 새로운 하드 드라이브 용량 분석 도구인 디스크 사용량을 사용해 보세요.

디스크 사용량은 C:\Windows\System32\diskusage.exe에 있으며 diskusage /?를 입력하면 사용 지침이 표시됩니다. 이 유틸리티는 전체 드라이브 또는 지정된 폴더를 검색하고 각 폴더가 사용 중인 양을 보고할 수 있습니다.

Windows 10/11에 Moon Knight 테마를 설치하는 방법

Windows 10/11에 Moon Knight 테마를 설치하는 방법

Moon Knight 테마 세트는 품질이 매우 높아 컴퓨터에 즉시 설치할 가치가 있습니다.

실행 명령을 사용하여 Windows 응용 프로그램을 빠르게 여는 방법에 대한 지침

실행 명령을 사용하여 Windows 응용 프로그램을 빠르게 여는 방법에 대한 지침

Windows에서 애플리케이션을 빠르게 열어야 할 때 우리는 종종 키보드 단축키를 사용합니다. 그러나 실행 명령을 사용하는 또 다른 방법이 있다는 것을 아는 사람은 거의 없습니다. 실행에는 Windows에서 다양한 응용 프로그램을 열 수 있는 많은 명령이 있지만 가장 일반적인 것은 아래 응용 프로그램을 여는 5가지 명령입니다. 참조하시기 바랍니다.

Windows 10 컴퓨터에 바이러스가 있습니다. 해결 방법은 다음과 같습니다.

Windows 10 컴퓨터에 바이러스가 있습니다. 해결 방법은 다음과 같습니다.

악성 코드가 컴퓨터에 설치되면 신속하게 컴퓨터를 제어하고 매우 심각한 오류를 일으킬 수 있습니다. 다운로드하여 설치하는 바이러스 백신 소프트웨어도 가짜 소프트웨어일 수 있으며 이는 컴퓨터에 해를 끼칠 수 있습니다.

Ubuntu Live USB를 사용하여 Windows PC에서 바이러스 제거

Ubuntu Live USB를 사용하여 Windows PC에서 바이러스 제거

Windows 컴퓨터가 바이러스에 감염되었거나 더 심각한 경우에는 시작할 수도 없습니다. Ubuntu Live USB 또는 CD를 소유하고 있는 경우 이를 사용하여 PC를 정리하고 Windows를 복원해 볼 수 있습니다.