백엔드 개발 Golang Golang의 URL에서 JSON 데이터를 로드하는 방법은 무엇입니까?

Golang의 URL에서 JSON 데이터를 로드하는 방법은 무엇입니까?

Jun 02, 2024 am 11:52 AM
json golang

Golang에서는 다음 단계에 따라 URL에서 JSON 데이터를 로드할 수 있습니다. 필요한 패키지를 가져옵니다. 응답을 얻으려면 http.Get을 사용하십시오. 응답 본문을 닫습니다. 바이트 슬라이스를 읽고 변환합니다. 바이트 슬라이스를 JSON 데이터 구조로 디코딩합니다.

如何在 Golang 中从 URL 加载 JSON 数据?

Golang의 URL에서 JSON 데이터를 로드하는 방법

Golang에서 JSON 데이터를 로드하는 방법은 매우 간단합니다. 아래에서는 URL에서 JSON 데이터를 로드하는 방법을 소개하고 실제 사례를 제공합니다.

단계:

  1. 필요한 패키지 가져오기:

    import (
     "encoding/json"
     "fmt"
     "io/ioutil"
     "log"
     "net/http"
    )
    로그인 후 복사
  2. http.Get 기능을 사용하여 데이터 응답 가져오기: http.Get 函数获取数据的响应:

    resp, err := http.Get("https://example.com/data.json")
    if err != nil {
     log.Fatal(err)
    }
    로그인 후 복사
  3. defer resp.Body.Close() 延迟函数中关闭响应体:

    defer resp.Body.Close()
    로그인 후 복사
  4. 使用 ioutil.ReadAll

    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
     log.Fatal(err)
    }
    로그인 후 복사

  5. defer resp .Body .Close() 지연된 함수에서 응답 본문을 닫습니다.

    var data map[string]interface{}
    if err := json.Unmarshal(body, &data); err != nil {
     log.Fatal(err)
    }
    로그인 후 복사

ioutil.ReadAll을 사용하여 응답 본문을 읽고 바이트 조각으로 변환합니다.

package main

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

func main() {
    resp, err := http.Get("https://jsonplaceholder.typicode.com/users")
    if err != nil {
        log.Fatal(err)
    }
    defer resp.Body.Close()

    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        log.Fatal(err)
    }

    var users []map[string]interface{}
    if err := json.Unmarshal(body, &users); err != nil {
        log.Fatal(err)
    }

    for _, user := range users {
        fmt.Printf("Name: %s, Email: %s\n", user["name"], user["email"])
    }
}
로그인 후 복사
바이트 슬라이스가 JSON 데이터 구조로 디코딩됩니다.

rrreee

🎜실용 사례: 🎜🎜🎜다음은 JSONPlaceholder API에서 직원 데이터를 로드하는 실제 사례입니다. 🎜rrreee🎜이 사례에서는 사용자를 로드하는 방법을 보여줍니다. 사용자의 이름과 이메일 주소를 각각 나열하고 반복하고 인쇄합니다. 🎜

위 내용은 Golang의 URL에서 JSON 데이터를 로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Golang을 사용하여 파일을 안전하게 읽고 쓰는 방법은 무엇입니까? Golang을 사용하여 파일을 안전하게 읽고 쓰는 방법은 무엇입니까? Jun 06, 2024 pm 05:14 PM

Golang을 사용하여 파일을 안전하게 읽고 쓰는 방법은 무엇입니까?

Golang 데이터베이스 연결을 위한 연결 풀을 구성하는 방법은 무엇입니까? Golang 데이터베이스 연결을 위한 연결 풀을 구성하는 방법은 무엇입니까? Jun 06, 2024 am 11:21 AM

Golang 데이터베이스 연결을 위한 연결 풀을 구성하는 방법은 무엇입니까?

Golang과 C++의 유사점과 차이점 Golang과 C++의 유사점과 차이점 Jun 05, 2024 pm 06:12 PM

Golang과 C++의 유사점과 차이점

golang 프레임워크 아키텍처의 학습 곡선은 얼마나 가파르나요? golang 프레임워크 아키텍처의 학습 곡선은 얼마나 가파르나요? Jun 05, 2024 pm 06:59 PM

golang 프레임워크 아키텍처의 학습 곡선은 얼마나 가파르나요?

Golang의 목록에서 임의의 요소를 생성하는 방법은 무엇입니까? Golang의 목록에서 임의의 요소를 생성하는 방법은 무엇입니까? Jun 05, 2024 pm 04:28 PM

Golang의 목록에서 임의의 요소를 생성하는 방법은 무엇입니까?

golang 프레임워크의 장점과 단점 비교 golang 프레임워크의 장점과 단점 비교 Jun 05, 2024 pm 09:32 PM

golang 프레임워크의 장점과 단점 비교

Golang 프레임워크의 오류 처리에 대한 모범 사례는 무엇입니까? Golang 프레임워크의 오류 처리에 대한 모범 사례는 무엇입니까? Jun 05, 2024 pm 10:39 PM

Golang 프레임워크의 오류 처리에 대한 모범 사례는 무엇입니까?

golang 프레임워크 문서 사용 지침 golang 프레임워크 문서 사용 지침 Jun 05, 2024 pm 06:04 PM

golang 프레임워크 문서 사용 지침

See all articles