我很難在 Go 中解組這段 YAML。我得到的錯誤是cannot unmarshal !!seq into map[string][]map[string][]string。我嘗試了所有類型的地圖都沒有成功(map[string]string ; []map[string]string 等等)import ( "gopkg.in/yaml.v1" "io/ioutil")type AppYAML struct { Runtime string `yaml:"runtime,omitempty"` Handlers map[string][]map[string][]string `yaml:"handlers,omitempty"` Env_Variables map[string]string `yaml:"env_variables,omitempty"`}func main() { s := `runtime: gohandlers:- url: /.* runtime: _go_app secure: alwaysenv_variables: something: 'test'` var a AppYAML if err = yaml.Unmarshal([]byte(s), &a); err != nil { log.Error(err) return }}
1 回答

qq_笑_17
TA貢獻1818條經驗 獲得超7個贊
將類型聲明更改為:
type AppYAML struct {
Runtime string `yaml:"runtime,omitempty"`
Handlers []map[string]string `yaml:"handlers,omitempty"`
Env_Variables map[string]string `yaml:"env_variables,omitempty"`
}
- 1 回答
- 0 關注
- 317 瀏覽
添加回答
舉報
0/150
提交
取消