0

我正在使用 Node.js,但我无法弄清楚如何读取包含数据(YAML 文件)的外部 http url,替换其中的值,并将更新后的值写入位于外部的 YAML 文件中网址。

但不幸的是 fs 模块只能在本地路径上读/写。

关于如何解决这个问题的任何想法?

谢谢!

const yaml = require('js-yaml');

const fs = require('fs')

let doc = yaml.safeLoad(fs.readFileSync('http://xxx', 'utf8'));

doc.General.Greeting = newGreet;

fs.writeFile('http://xxx', yaml.safeDump(doc), (err) => {
    if (err) {
        console.log(err);
    }
});
4

1 回答 1

0
const yaml = require('js-yaml');
const request = require('request');
const getSchema = (url) => { 
    return new Promise((resolve, reject) => {
        request.get(url, (error, response, body) => {
            if (!error && response.statusCode == 200) {
                return resolve(body);
            }
            return reject({
                message: "Invalid URL!",
                stack: error ? error.stack : null
            });
        });
    });
}
const yamlToJson = (content) => yaml.safeLoad(content);

//put this code in async block
const yamlSchema = await getSchema(schemaURL);
const jsonSchema = yamlToJson(yamlSchema);
console.log(jsonSchema);
于 2020-08-20T04:06:42.680 回答