正在离线加载本地 JSON 文件

Loading an local JSON file offline

所以我有一个客户想要一个 站点 ,它不在任何地方托管,但可以通过浏览器在本地访问(文件夹中的 html 文件)。现在棘手的部分是他们想在浏览器中自行更改此站点。所以我认为最好的方法是在本地进行配置。我创建了一个 config.json 并继续 get 它:

$.getJSON("config.json", function(config){
    //use config to alter the site
});

我发现 here 然而,现代浏览器会阻止此类请求,因为它被认为是不安全的。例如 Chrome 表示:

Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

现在的问题是:我怎样才能拥有一个存储我的配置的文件,以便 Javascript/jQuery 可以加载它。有没有办法要求用户允许文件访问?有没有一种完全不同的方法可以更好地完成所有这些任务?

我期待任何建议,只要它是离线兼容的!

最简单的解决方案:将 config.json 重命名为 config.js 以保持一致性

现在,如果 JSON 是

{
    "configKey1": "value1"
}

将 json 包装在一个函数中,

function getconfig() { 
    return {
        "configKey1": "value1"
    };
}

现在,只需在 HTML

中添加 <script src="config.js">

然后,当你想获取配置时...调用getconfig阅读它

let config = getconfig();