У меня есть большой файл json, который заполняет веб-сайт вопросами с использованием gatsby.js (не важно для вопроса) и уценки (важно).Мои данные выглядят примерно так.
"-JugHeFMJfGN071lmqqo" : {
"askedHistPercent1" : "58",
"askedHistPercent2" : "54",
"askedHistYear1" : "2018",
"askedHistYear2" : "2015",
"author" : "Author Name",
"categories" : [ "Category 1", "Cat 2", "Cat 3" ],
"date" : "2015-07-20 09:27:29",
"definition" : "Long Definition here. Includes a now //link to show the content. Was a http://link or https://link before I deleted all the link prefixes with control-f replace",
"permalink" : "//www.Urlherelong",
"title" : "Title here"
},
и т. Д. Для еще 1600 элементов в этом файле .json.Я построил следующий скрипт для извлечения всей информации в файлы разметки в качестве фронт-мата yaml для использования с gatsby graphql.Это не выглядит красиво, но работает 99,99% времени
const fs = require("fs");
const YAML = require("yamljs");
const bigObject = require("../1111data.json");
var _ = require("lodash");
Object.entries(bigObject).forEach(([name, data]) => {
fs.writeFile(`${_.kebabCase(data.title)}.md`, "---\r\n", err => {
fs.appendFile(`${_.kebabCase(data.title)}.md`,YAML.stringify(data),
err => {
fs.appendFile(`${_.kebabCase(data.title)}.md`, "\r\n---\r\n", err => {
if (err) throw err;
console.log(`${_.kebabCase(data.title)}.md has been saved!`);
});
}
);
});
});
В любом случае, скрипт возвращает префиксы http и https в мои URL-ссылки.Старшие разработчики в моей команде хотят, чтобы у меня вместо этого были // префиксы для всех URL.После удаления всех https: и http: из моего файла .json, poof, они снова появятся.Я чешу голову, сидя здесь, потому что я никогда не говорил им делать это.Вы думаете, что сценарий будет на 100% информацией, которую он извлекает, верно?Это то, что я получаю.
---
askedHistPercent1: "35"
askedHistYear1: "2008"
assocMediaLink1: ""
author: ""
categories:
- category1
content: ""
date: "2015-03-05 17:01:55"
definition: "http://link here again. Rest of definition"
excerpt: "yada yada"
id: 14247
permalink: "http://link"
title: "title"
---
Есть ли что-то, что я могу добавить в свой сценарий, чтобы заблокировать повторное добавление префиксов ссылок http и https и сохранить их вместо //www.etc?