草庐IT

Unmarshal

全部标签

go - 将 json 解码为结构 : cannot unmarshal array into Go value

我有一项服务通过REST为我提供属性。现在我想将正文解码为一个属性结构。请看这个Playground示例:click.当我只有一个属性时,我可以轻松地将其解码为Property。然而,来自服务器的实际响应在某种程度上有所不同。我想要解码的实际响应是这样的:[{"key":"blabla","secret":false,"type":"string","value":"hereisthevalue"},{"key":"yepyepakey","secret":true,"type":"string","value":"dummy"}]不幸的是我不知道如何解码这个。有人可以指出我正确的方向

pointers - json.Unmarshal() 接受指向指针的指针

我意外地注意到,我可以成功地将一个指向结构的指针和一个指向指向结构的指针的指针传递给json.Unmarshal(),并且两者都可以正常工作:packagemainimport("testing""encoding/json")typePersonstruct{NamestringAgeint}funcTestMarshaling(t*testing.T){foo:=&Person{Name:"bob",Age:23}//marshalittobytesb,err:=json.Marshal(foo)iferr!=nil{t.Error(err)}bar:=&Person{}//poi

json - 将 int 设置为 0 的 Unmarshal/Marshal json 似乎不起作用

我正在尝试将json对象解析为struct,但是integer值设置为0将不起作用。q:=[]byte(`{"string":"thisisastring","integer":0}`)typeTeststruct{Stringstring`json:"string,omitempty"`Integerint`json:"integer,omitempty"`}varqqTestiferr:=json.Unmarshal(q,&qq);err!=nil{panic(err)}queryStr,err:=json.Marshal(qq)iferr!=nil{panic(err)}fmt.

arrays - 戈朗 :How to parse/unmarshal/decode a json array API response?

我正在尝试解析位于https://wikimedia.org/api/rest_v1/metrics/pageviews/per-article/en.wikipedia.org/all-access/all-的维基百科API的响应agents/Smithsonian_Institution/daily/20160101/20170101到一个结构数组中,我将继续打印出观看次数但是,当我构建和运行它时,我为实现此目的而尝试实现的代码在终端中没有返回任何内容?我未能成功的代码如下。typePoststruct{Projectstring`json:"project"`Articlestr

json - Go : When will json. Unmarshal to struct 返回错误?

假设我有一个类似的结构typeAstruct{namestring`json:"name"`}然后在主要我有代码varjsonStringstring=`{"status":false}`varaAerror:=json.Unmarshal([]byte(jsonString),&a)显然上面的代码产生了一个nil错误,不管json格式是否不同。Go中的json.Unmarshal()什么时候返回错误? 最佳答案 如果源中的值与目标中的值不对应,JSON解码器不会报告错误。例如,如果源包含字段“status”,但目标不包含,则不会出

json.Unmarshal 返回空白结构

我有一个像这样的JSONblob{"metadata":{"id":"2377f625-619b-4e20-90af-9a6cbfb80040","from":"2014-12-30T07:23:42.000Z","to":"2015-01-14T05:11:51.000Z","entryCount":801,"size":821472,"deprecated":false},"status":[{"node_id":"de713614-be3d-4c39-a3f8-1154957e46a6","status":"PUBLISHED"}]}我有一些代码可以将其转换回go结构typeSt

json - 从 json.Unmarshal 得到错误 "invalid character ' ï' looking for beginning of value”

我使用GolangHTTP请求来获取json输出,如下所示。我尝试访问的网络服务是MicrsoftTranslatorhttps://msdn.microsoft.com/en-us/library/dn876735.aspx//DatastructofTransformTextResponsetypeTransformTextResponsestruct{ErrorConditionint`json:"ec"`//ApositivenumberrepresentinganerrorconditionErrorDescriptivestring`json:"em"`//Adescrip

json.Unmarshal 嵌套对象成字符串或 []byte

我正在尝试解码一些json,以便嵌套对象不会被解析,而只是被视为string或[]byte。所以我想得到以下内容:{"id":15,"foo":{"foo":123,"bar":"baz"}}解码为:typeBarstruct{IDint64`json:"id"`Foo[]byte`json:"foo"`}我收到以下错误:json:cannotunmarshalobjectintoGovalueoftype[]uint8playgrounddemo 最佳答案 我认为您正在寻找的是RawMessage输入encoding/json包。

json - 使用 json.Unmarshal 与 json.NewDecoder.Decode 解码 JSON

我正在开发一个API客户端,我需要根据请求对JSON有效负载进行编码并从响应中解码JSON正文。我已经阅读了几个库的源代码,根据我所见,我基本上有两种可能对JSON字符串进行编码和解码。使用json.Unmarshal传递整个响应字符串data,err:=ioutil.ReadAll(resp.Body)iferr==nil&&data!=nil{err=json.Unmarshal(data,value)}或使用json.NewDecoder.Decodeerr=json.NewDecoder(resp.Body).Decode(value)在我的情况下,在处理实现io.Reader

json - 如何使用 Go unmarshal 解析复杂的 JSON?

在go标准包encoding/json公开json.Unmarshal函数来解析JSON。可以在预定义的struct中解码JSON字符串,或者使用interface{}并为意外的JSON数据结构迭代结果。也就是说,我无法正确解析复杂的JSON。谁能告诉我如何实现这一目标?{"k1":"v1","k2":"v2","k3":10,"result":[[["v4",v5,{"k11":"v11","k22":"v22"}],...,["v4",v5,{"k33":"v33","k44":"v44"}]],"v3"]} 最佳答案 引自JS