我正在开发一个 express.js 应用程序,它应该加载一个 API 定义文件(很可能是 JSON 格式的 swagger 文件)。目前我已经创建了一个中间件,它应该通过 fs.readFile()
和 JSON.parse()
解析 JSON 文件,以检查用户访问某些资源的权限.所以基本上每次执行请求时,我的中间件都会获取相同的 JSON 文件并对其进行解析,这显然是一项额外的工作。是否可以加载此 JSON 文件,将其解析并存储到某种全局配置中的某个内部对象,并在修改后重新加载它,以免对每个请求执行相同的操作?
最佳答案
当然,您可以创建这样的函数(伪代码):
var jsonData=null;
function getConfiguration() {
if (!jsonData) {
jsonData= readFileSync(...);
}
return jsonData;
}
module.exports.getConfiguration=getConfiguration;
或者,正如@AleksandrM 评论的那样,您可以使用 require 来“导入”它:
关于javascript - Node.js express : loading JSON file only on server startup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32307208/