草庐IT

Json-RPC

全部标签

json - XML 到 json 转换

我有以下XML:2016-09-14T13:58:30Z1.2我将它解码为以下结构:typeValuestruct{Data[]Data`xml:"anyType"`}typeDatastruct{Keystring`xml:"http://www.w3.org/2001/XMLSchema-instancetype,attr"`Valuestring`xml:",chardata"`}我最终想将它们编码为这种结构的json:{timestamp:[thevalueofxsi:type="xsd:dateTime"]value:[thevalueofxsi:type="xsd:deci

json - 具有多个参数的过滤器结构

我有一个结构数组和一个带有变量名称和一些过滤器值的映射。我想用我的map过滤我的数组。示例GoPlayground:packagemainimport"fmt"typecnts[]cnttypecntstruct{IDint`json:"Id"`Areastring`json:"Area"`Statestring`json:"State"`Citystring`json:"City"`}funcmain(){mycnts:=cnts{cnt{124,"Here","South","Home"},cnt{125,"Here","West","Home"},cnt{126,"","Sout

arrays - 在 Go/Golang 中解码嵌套的 JSON 数组

您好,我在解码嵌套的JSON数组时遇到问题。我应该创建什么结构?我想尽可能避免使用interface{},但我真的不知道在这种情况下是否可行。我要解码的Json:"[[[{\"aaa\":\"aaa\"}]]]"和我想用来解码的结构:typeSomeStructNestedNestedstruct{Aaastring`json:"aaa"`}typeSomeStructNestedstruct{SomeStructNestedNested[]SomeStructNestedNested}typeSomeStructstruct{SomeStructNested[]SomeStructN

Go 模板 - 检查 json 列表中是否存在键

我正在使用confd用于动态nginx服务重新配置并且与Go模板有一些斗争。我有一个名为$data的json对象,$data.subsets可能包含一个名为“addresses”的键——如果出现这种情况,我只想在循环内执行模板被满足。我已经尝试过各种方法,例如您在下面看到的$data.subsets[0].addresses是完全错误的。我不太确定如何正确完成此操作。这是我的nginx模板的一部分,我只想在至少有1个上游服务时渲染,如果没有/不可用则不会。模板之后是成功或失败时$data的json对象。提前感谢您的帮助,非常感谢!{{range$ns:=getvs"/registry/

json - 如何正确解码 Golang 中的无键 JSON 数组?

我有如下所示的JSON数据:[{"globalTradeID":64201000,"tradeID":549285,"date":"2016-11-1123:51:58","type":"buy","rate":"10.33999779","amount":"0.02176472","total":"0.22504715"},{"globalTradeID":64200631,"tradeID":549284,"date":"2016-11-1123:48:39","type":"buy","rate":"10.33999822","amount":"0.18211700","tota

json - 是否可以在运行中即时转换 JSON 变量名?

我目前正在实现一些将复杂结构打印到JSON中的函数。它需要变量名是小写的,这意味着在各处放置大量JSON标签。我尝试将结构转换为map,然后更改大写并将其转换回来,但是将int64转换为float64并弄乱了其他一些事情。有没有什么方法可以轻松地在go中即时转换JSON变量名? 最佳答案 如果map不是您的选择,JSON标签将是您的最佳选择。否则你需要手动修改json.Marshal的输出,这是一个[]byte将其更改为字符串,通过它解析并转换所有小写键。 关于json-是否可以在运行中

json - 如何正确解码命令行输入?

我在trial.go中编写了以下代码片段:typeMinestruct{Astring`json:"a"`}funcmain(){s:=Mine{}v:=os.Args[1]//`{"a":"1"}`fmt.Println(v)fmt.Println(reflect.TypeOf(v))json.Unmarshal([]byte(v),&s)fmt.Println(s)}我正在运行这个文件如下:goruntrial.go`{"A":"1"}`但是我在s中没有得到任何东西。它始终是一个空白结构。我在这里做错了什么? 最佳答案 首先检查

json - 如何将 hit.Source 反序列化为 golang 中的结构

我一直在使用这个存储库:https://github.com/olivere/elastic下一段代码是golang中elasticsearch查询的例子:searchResult,err:=client.Search().Index("mx").Type("postal_code").Source(searchJson).Pretty(true).Do()iferr!=nil{panic(err)}ifsearchResult.Hits.TotalHits>0{for_,hit:=rangesearchResult.Hits.Hits{vardDocumenterr:=json.Un

json - Go语言中带有结果对象的动态结构

我想创建具有动态数据结构的结果对象json,ex在func1中,结果是这样的{'result':'thisisresult','content':{'func1':'value','some_desc_func1':'value'}}和func2可能结果只是(专注于内容)像这样{'result':'thisisresult','content':{'func2':'value'}}作为引用https://stackoverflow.com/a/35657622/4476788,我想用结果的一个键显示结果json。像这样{'result':'thisisresult','content'

json - 将嵌套接口(interface){}解码为用户提供的结构指针

我有一个Set函数,它在我自己的名为session的结构中包装了一个用户对象(或变量)。它将它分配给我的session结构的值字段。然后Set函数编码此结构并将字符串分配到存储中的某处。我的问题是我不确定如何实现我的Get函数以仅返回存储在值字段中的未编码结构,而不是整个session包装器结构。我做了一个非常简单的example证明我在说什么。我无法在Get函数的赋值中使用类型断言,因为我事先不知道用户将使用什么类型。我怀疑可能有一种方法可以使用反射来实现这一点?编辑:目前提供的两个答案不是我要找的。我不知道用户将使用什么类型,它可能是任何类型,因此通过硬编码他们的类型或试图“猜测”