首页 > 解决方案 > 来自 JSON 的 YAML 文件

问题描述

我正在尝试从 json 文件创建一个 yaml 文件,该文件将用于 cuttle 速率限制,并且看起来像这样(https://github.com/mrkschan/cuttle/blob/master/cuttle.yml)。这是我必须转换 json 文件的代码。(节点yaml:https ://www.npmjs.com/package/node-yaml )

const yaml = require('node-yaml');
const test = require('./test.json');

let converted = yaml.dump(test);
console.log(converted);

这是 test.json 文件。

{
"zones": 
    [ 
        { 
            "host": "*", 
            "shared": true, 
            "control": "rps", 
            "rate": 2 
        }, 
        { 
            "host": "github.com", 
            "shared": false, 
            "control": "rpm", 
            "rate": 10
        }
    ] 
}

我得到的输出是这个。

zones:
  - host: '*'
    shared: true
    control: rps
    rate: 2
  - host: github.com
    shared: false
    control: rpm
    rate: 10

除了 github.com 不是“github.com”这一事实之外,它与我想要输出的内容非常接近。如果有人知道如何解决这个问题,请告诉我!

标签: javascriptjsonyamlcuttle

解决方案


来自yaml_formatYAML 中的字符串可以用单引号和双引号括起来。在某些情况下,它们也可以不加引号

因此github.comyaml 输出中的字符串值被正确地引用,并且*yaml 输出中的字符串值被正确地引用。

如果您期望正式正确的 yaml 格式,您就完成了。
如果您期望一些不同的格式,您应该正式定义它。


推荐阅读