GO에서 REST API 사용

5837 단어 apirestgo


GO에서 REST API를 사용하는 것은 정말 간단합니다.net/http는 이 문서에서 사용할 GO 표준 모듈과 함께 제공됩니다.

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
    "log"
    "net/http"
)

func getMovieDetails(movieName string) map[string]interface{} {

    // response is going to be stored in this variable
    var movieDetailResponse map[string]interface{}

    // url to be fetched, replace the apiikey with your own
    url := "http://www.omdbapi.com/?t=" + movieName + "&apikey=your_key"

    // create a new http request
    res, err := http.Get(url)

    // check for errors
    if err != nil {
        log.Fatal(err)
    }

    // close the response body when function returns
    defer res.Body.Close()

    // read the response body
    body, err := ioutil.ReadAll(res.Body)

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

    // unmarshal the json response
    // the body is in []byte format, so we need to convert it to json
    // we can use json.Unmarshal(body, &movieDetailResponse) to unmarshal byte array to json
    if err := json.Unmarshal(body, &movieDetailResponse); err != nil {
        log.Fatal(err)
    }

    // return the movie details
    return movieDetailResponse

}

func main() {
    movieName := "k.g.f chapter 2"
    movieDetail := getMovieDetails(movieName)
    // print the movie details
    fmt.Println("Title", movieDetail["Title"])
    fmt.Println("Genre", movieDetail["Genre"])
    fmt.Println("Plot", movieDetail["Plot"])
}



이것이 통찰력이 되었기를 바랍니다.

더 즉각적인 업데이트를 원하시면 저를 팔로우하세요

좋은 웹페이지 즐겨찾기