fs.readFileSync() 在 express js 应用程序中失败

fs.readFileSync() fails in express js app

我的项目结构是:

- project
  - routes
     admin.js
     sql-requests.xml

现在,在我的 admin.js 中,我正在尝试读取 sql-requests.xml 文件。假设他们在完全相同的路径上,这是我的代码:

var fs = require('fs');
var content = fs.readFileSync('./sql-requests.xml');

失败了。这是我尝试过的列表:

这将取决于您从中执行 admin.js 的工作目录。如果您要访问当前正在执行的脚本旁边的文件,那么以下内容会更可靠:

var content = fs.readFileSync(__dirname + '/sql-requests.xml');

有关详细信息,请参阅此答案(和问题):