我有以下 YAML 结构:
type Pipeline struct {
Name string `yaml:"name"`
Nodes map[string]NodeConfig `yaml:"nodes"`
Connections []NodeConnection `yaml:"connections"`
}
type NodeConfig struct {
Type string `yaml:"type"`
Config interface{} `yaml:"config"`
}
对于每个NodeConfig,根据 的值Type,我需要检测 的真实类型Config。
switch nc.Type {
case "request":
return NewRequestNode(net, name, nc.Config.(RequestConfig))
case "log":
return NewLogNode(net, name)
//...
}
这是我从中得到的错误:
panic: interface conversion: interface {} is map[string]interface {}, not main.RequestConfig
我怀疑这是因为当我真的Config希望map[string]interface{}它只是一个interface{}. 我怎样才能做到这一点?
慕哥9229398
相关分类