golang解析yaml配置文件踩坑

本文总结了使用Golang解析yaml配置文件时可能遇到的问题,包括struct命名冲突、回写数据时增加额外内容、struct列表定义方式、层级关系误解以及解析不确定名称子项的方法。通过指定struct字段名、使用omitempty、正确定义列表结构、遵循原始key布局以及利用map来解决这些问题。
摘要由CSDN通过智能技术生成

golang解析yaml配置文件踩坑

1.go在写struct的时候遇到重名的yaml配置,在struct中指定名称
type Discovery struct{
   
   Locator Locator `yaml:"locator,omitempty"`
}

type Locator struct {
   
   Enabled bool `yaml:"enabled,omitempty"`
}

type Gateway struct{
   
   Routes []Routes `yaml:"routes,omitempty"`
   Discovery Discovery `yaml:"discovery,omitempty"`
   DefaultFilters DefaultFilters `yaml:"default-filters,omitempty"`
}

type DefaultFilters struct{
   
   Name []string `yaml:"name,omitempty"`
   Args Args `yaml:"args,omitempty"`
}

type Predicates struct{
   
   Path string `yaml:"Path,flow,omitempty"`
}

type Filters struct{
   
   StripPrefix int `yaml:"StripPrefix,omitempty"`
   Name string `yaml:"name,omitempty"`
   Args Args `yaml:"args,omitempty"`
}

type Args struct{
   
   KeyResolver string `yaml:"key-resolver,omitempty"
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值