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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

僅從原型中提取重復(fù)的場元素

僅從原型中提取重復(fù)的場元素

Go
慕桂英3389331 2022-08-15 15:38:00
syntax = "proto3";package TestServer;service RelaySrv{    rpc UpdateGroupDetails (Group) returns (Response);}message Person{    int64 id = 1;    string name = 2;}message Group{    repeated Person persons = 1;}Go code:    var buf bytes.Buffer    m := jsonpb.Marshaler{}    err := m.Marshal(&buf, Group)在組 protobuf 消息 buf 上執(zhí)行封送后,buf 變量將具有:{ “persons” : [{“id”:“1”,“name”:“sun”}, {“id”:“2”,“name”:“sam”}] }如何提取[{“id”:“1”,“name”:“sun”}, {“id”:“2”,“name”:“sam”}]從 buf 沒有清空它??
查看完整描述

2 回答

?
烙印99

TA貢獻1829條經(jīng)驗 獲得超13個贊

如果我理解正確,這就是你想要的。


    const b = `[{"id":1,"Name":"sun"}, {"id":2,"Name":"sam"}]`


    persons := []*pb.Person{}


    err := json.Unmarshal([]byte(b), &persons)

    if err != nil {

        panic(err.Error())

    }


    log.Println(persons)

    // 2021/03/06 22:34:15 [id:1 name:"sun"  id:2 name:"sam" ]


查看完整回答
反對 回復(fù) 2022-08-15
?
狐的傳說

TA貢獻1804條經(jīng)驗 獲得超3個贊

不確定是否有更好的方法,但它沒有封送到j(luò)son結(jié)構(gòu)中,而是使用編碼/解碼到j(luò)son。ingest.stream不再抱怨了,我可以在azure-data-explorer中看到數(shù)據(jù)


    //have a json struct for Group and Person to match the protbuf message posted in the question

    var g Group

    json.NewDecoder(&buf).Decode(&g)


    var b bytes.Buffer

    for i := 0; i < len(g.Persons); i++ {

        e := json.NewEncoder(&b).Encode(&g.Persons[i])


        if e != nil {

            panic("issue marshalling protobuf")

        }

    }


查看完整回答
反對 回復(fù) 2022-08-15
  • 2 回答
  • 0 關(guān)注
  • 99 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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