yaml 文件的锚点、继承、重写对于重复数据的处理

文章背景

  在项目进行过程中,经常会遇见需要引用yaml文件,其中最烦人的就是对于yaml文件的数据编写以及拓展,经常会遇见很多大量重复的数据需要ctrl+C/V,yaml文件中的锚点与继承则节省了很多工作,一次编写,其它引用该锚点的内容自动继承(继承功能)。并且如果在引用过程中,需要修改原有的信息的某个键值对,只需要在新的内容中再编写一次该键值对即可(重写功能)

-- yaml 锚点写法 --------------------------

Accesstoken: &accesstoken  # 定义一个名为accesstoken的锚点
  'Accesstoken': 'eyJraWQiOiJ1c2VyIiwidHlwIjoiSldUIiwiYWxnIjoiSFMyNTYifQ'

Base: &base  # 定义一个base的锚点,用于记录所有常用的header选项
  'Accept': 'application/json, text/plain, */*'
  'Accept-Encoding': 'gzip, deflate, br, zstd'
  'Accept-Language': 'zh-CN,zh;q=0.9'
  'Content-Type': 'application/json;charset=UTF-8'

Base_2: &base2 # 定义一个base2的扩展锚点,用于记录所有常用的header选项
  <<: *accesstoken  # 用于继承Accesstoken的内部所有参数
  <<: *base  # 用于继承Accesstoken的内部所有参数

Base_3: &base3
  'Accept': 'application/json, text/plain, */*'

chrome_header: &chrome_header
  <<: *base2  # 用于继承base2的内部所有参数
  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36'

firefox_header:
  <<: *chrome_header
  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:125.0) Gecko/20100101 Firefox/125.0'

app_4.0_header:
  <<: *accesstoken
  <<: *base3

Base_4: # 例如这里在引用base2的内容后,对其中的Accesstoken信息进行修改,则打印后显示的是新值
  <<: *base2
  'Accesstoken':'eyJraWQiOiJ1c2VyIiwidHlwIjoiSldUIiwiYWxnIjoiSFMyNTYifQajiejrijqkj'

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值