[Go] net/http package로 get 요청하기

윤동환·2023년 7월 12일
0

Go

목록 보기
13/18

요청 코드

func MakeConfigFile() {
	params := url.Values{}
    params.Add("sql", "select * from SMS_PREFIX_RN_MAN")
	resp, err := http.Get("http://112.172.129.233:7979/MMDB/DBMS_STAT?" + params.Encode())
	Check(err)
	defer resp.Body.Close()
	data, err := io.ReadAll(resp.Body)
    if err != nil {
		Check(err)
    }
    fmt.Printf("data : %s\n", string(data))
	fmt.Println(resp.Status)	
	fmt.Println(resp.Proto)
	fmt.Println(resp.ContentLength)
	fmt.Println(resp.Request.Method)
	fmt.Println(resp.Request.URL)
}

Check함수는 저의 package내에 선언한 local함수입니다.

코드 설명

params.Add("sql", "select * from SMS_PREFIX_RN_MAN")'

이 코드는 sql=select * from SMS_PREFIX_RN_MAN 문자열을 리턴합니다.

이러한 방식으로 url 인코딩을 해주지 않으면 요청시 공백 부분이나 한글이 섞일 시 제대로 처리가 안될 수 있습니다.

Reference

https://pkg.go.dev/net/http#example-Get
https://golang.cafe/blog/how-to-url-encode-string-in-golang-example.html

profile
모르면 공부하고 알게되면 공유하는 개발자

0개의 댓글