map[key:2073933158088]我需要从这个数据结构中以字符串的形式获取密钥,但我似乎无法弄清楚如何!非常感谢帮助解决这个过于简单的问题。上面的值被封装在名为 data 的变量中。我试过:data.key, data[key], data["key"],data[0]这些似乎都不是合适的电话。为了定义数据,我将一个 JSON 数据包发送到 IronMQ 上的队列。然后我从队列中拉出消息并像这样操作它:payloadIndex := 0for index, arg := range(os.Args) { if arg == "-payload" { payloadIndex = index + 1 }}if payloadIndex >= len(os.Args) { panic("No payload value.")}payload := os.Args[payloadIndex]var data interface{}raw, err := ioutil.ReadFile(payload)if err != nil { panic(err.Error())}err = json.Unmarshal(raw, &data)
2 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
设计您的数据类型以匹配 json 结构。这是您如何实现这一目标:
package main
import (
"fmt"
"encoding/json"
)
type Data struct {
Key string `json:"key"`
}
func main() {
data := new(Data)
text := `{ "key": "2073933158088" }`
raw := []byte(text)
err := json.Unmarshal(raw, data)
if err != nil {
panic(err.Error())
}
fmt.Println(data.Key)
}
- 2 回答
- 0 关注
- 209 浏览
添加回答
举报
0/150
提交
取消