본문 바로가기
GO lang

http server 기본1

by NOMADFISH 2021. 1. 20.

지금까지 이제 기본적인 사항은 완료되었습니다. 이제 간단한 server를 만들어 보기로 한다.

  • http method는 여기 에서 먼저 공부하고 옵니다.
 

HTTP 요청 메서드 - HTTP | MDN

HTTP는 요청 메서드를 정의하여, 주어진 리소스에 수행하길 원하는 행동을 나타냅니다. 간혹 요청 메서드를 "HTTP 동사"라고 부르기도 합니다. 각각의 메서드는 서로 다른 의미를 구현하지만, 일부

developer.mozilla.org

  • 먼저 가장 간단한 GET Medthod로 브라우저 주소창에 주소를 치면, 글자를 리턴해주고, 이것이 브라우저 창에 보이도록 해봅시다.

net/http 내장 모듈

  • net/http내장 객체를 import해서 사용해야 한다. 

Code

package main

import (
	"net/http"
)

func main() {
	http.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) {
		w.Write([]byte("Hello World"))
	})
	http.ListenAndServe(":5000", nil)

}

 

코드는 간단하다. 위 코드를 main.go로 저장하고

 

  • import( "net/http") 는  내장 모듈로 http 네트워크 관련 기능들을 제공한다.
  • http.HandleFunc("/", func(.... 은  Path '/', 로 요청이 들어 오면, func( 를 호출 해라고 하는 핸들러 연결 함수 입니다.
    • w 파라미터는 http responsewriter로 응답을 작성하게 해주는 객체입니다.
  • http.ListenAdnServe(":5000", nil) 은 port 500번으로 서버를 실행 시켜라 입니다. 뒤에 nil로 표기된 부분은 서버 실행시 호출되는 함수를 넣을 수 있습니다. 에러처리나, 서버가 닫을 때 처리해야 될 일이 있는 경우 사용할 수 있습니다.
  • go run main.go
  • 이제 브라우저에서 http://localhost:5000 로 접속 하면, Hellow World라는 글자가 화면에 나타난다.
    • http.HandleFunc("/A", func.... 이런 방식의 handler를 작성하면, 
    • http://localhost:5000/A 로 접속시 호출
  • 이제 기본적인 GET method를 작성할 수 있게 되었습니다.
  • 다음 시간는 query스트링 처리, post method처리 등에 대해 알아 보겠습니다.

'GO lang' 카테고리의 다른 글

defer  (0) 2021.01.03
Switch 2  (0) 2020.12.26
Switch  (0) 2020.12.23
조건문 if  (0) 2020.12.18
반복문  (0) 2020.12.14