본문 바로가기
IT 초보코딩의 세계/Go 언어

[Block Chain] Go언어의 Web Download 3장

by 조이럭키7 2023. 4. 14.
반응형

 앞서서 AES 대칭키, RSA 공개키 알고리즘에 대해서 알아보는 시간을 가졌고 이번에는 Web Download에서의 GET 방식과 POST 방식에 대해서 알아보는 시간을 가져보자.

https://joylucky7.tistory.com/45

 

[Block Chain] Go언어의 AES 대칭키, RSA 공개키 알고리즘 2장

앞서서(1장에서) 암호화에 대해서 기본 개념을 살펴보았는데 참고하지 못했다면 아래포스팅을 꼭 읽고 2장을 보도록 하자 https://joylucky7.tistory.com/44 Go언어의 JSON, 암호화 1장 ◆ encoding / json 패키

joylucky7.tistory.com


◆ GET 방식

package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
)

func main(){
  url := "http://golang.org"
  res , err := http.Get(url)
  if err != nil{
  panic(err)
  }
  defer res.Body.Close()

  html, err2 := ioutil.ReadAll(res.Body)
  if err2 != nil{
  panic( err2)
  }
  fmt.Println( string(html))
}

◆ POST 방식

package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
  "log"
)

func main(){
  requestBody := strings.NewReader(`
  {
  "name":"test",
  "salary":"123",
  "age":"23
  }
  `)

  res, err := http.Post(
  "http://dummy.restapiexample.com/api/v1/create",
  "application/json;charset=UTF-8",
  requestBody,
  )

  if err != nil{
  log.Fatal(err)
  }

  data, _ := ioutil.ReadAll(res.Body)
  res.Body.Close()

  requestContentType := res.Request.Header.Get("Content-Type")
  fmt.Println("Request content-type:", requestContentType)

  fmt.Printf("%s\n", data)
}

 

반응형

댓글