gpt4 book ai didi

node.js - 在 fs.readFile(在 express 应用程序内)中使用通配符/glob/minimatch

转载 作者:搜寻专家 更新时间:2023-11-01 00:11:56 26 4
gpt4 key购买 nike

我有一个(迷你) express 应用程序。基本上只是显示覆盖率结果。在里面我有:

app.get('/coverage', function(req, res) {
fs.readFile(path.join(__dirname, '/coverage', 'PhantomJS 1.9.2 (Linux)', 'lcov-report', 'index.html'), 'utf8', function(err, content) {

if(!err) {
res.send(content);
} else {
res.setHeader({ status: '404' });
res.send('');
}
});

});

我的问题是测试运行器在创建测试覆盖率报告时可以更改文件夹路径,可以是 Phantom 1.9.3 或类似的东西。所以我想我需要在中间(覆盖范围和 lcov-report 之间)使用某种通配符来构建路径。

如何实现?

最佳答案

在 Node 中你不能,但是你可以使用第 3 方模块来达到这个目的。
例如,使用 glob模块:

var glob = require('glob');

app.get('/coverage', function(req, res) {
glob(path.join(__dirname, '/coverage', 'PhantomJS *', 'lcov-report', 'index.html'), function(err, matches) {
if (err) {
// handle error
}

fs.readFile(matches[0], 'utf8', function(err, content) {
if(!err) {
res.send(content);
} else {
res.statusCode(404);
res.send('');
}
});
});
});

我还没有测试过,但我想它会起作用的!
不要忘记处理错误, children !

关于node.js - 在 fs.readFile(在 express 应用程序内)中使用通配符/glob/minimatch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20679495/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com