第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 Golang 中動(dòng)態(tài)創(chuàng)建結(jié)構(gòu)

在 Golang 中動(dòng)態(tài)創(chuàng)建結(jié)構(gòu)

Go
泛舟湖上清波郎朗 2022-11-08 16:35:40
所以我正在使用一個(gè)外部 API,我想解析它的響應(yīng)。傳入的響應(yīng)具有固定格式,即type APIResponse struct {    Items          []interface{} `json:"items"`    QuotaMax       int           `json:"quota_max"`    QuotaRemaining int           `json:"quota_remaining"`}因此,對(duì)于每個(gè)響應(yīng),我都在解析項(xiàng)目?,F(xiàn)在項(xiàng)目可以根據(jù)請(qǐng)求是不同類(lèi)型的。它可以是網(wǎng)站、文章等的一部分,它們有各自的模型。喜歡:type ArticleInfo struct {    ArticleId    uint64   `json:"article_id"`    ArticleType  string   `json:"article_type"`    Link         string   `json:"link"`    Title        string   `json:"title"`}type SiteInfo struct {    Name    string `json:"name"`    Slug    string `json:"slug"`    SiteURL string `json:"site_url"`}有什么辦法,在解析輸入時(shí)定義ItemsAPIResponse 的類(lèi)型。我不想為單個(gè)響應(yīng)創(chuàng)建單獨(dú)的類(lèi)型?;旧舷雽⑷魏蝹魅氲捻憫?yīng)解組到 APIResponse 結(jié)構(gòu)中。
查看完整描述

1 回答

?
智慧大石

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊

Items將字段類(lèi)型更改為interface{}:


type APIResponse struct {

    Items          interface{} `json:"items"`

    ...

}

將響應(yīng)Items字段設(shè)置為所需類(lèi)型的指針。解組響應(yīng):


var articles []ArticleInfo

response := APIResponse{Items: &articles}

err := json.Unmarshal(data, &response)

使用變量訪問(wèn)文章articles。


在操場(chǎng)上運(yùn)行一個(gè)示例。



查看完整回答
反對(duì) 回復(fù) 2022-11-08
  • 1 回答
  • 0 關(guān)注
  • 303 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)