我需要在/ public文件夹中创建临时文件。 为什么?我需要生成小的静态.html代码段,以避免每次用户刷新页面时都调用数据库。
我编写了以下代码:
Meteor.startup(() => {
if (Meteor.isServer) {
const fs = require('fs');
Meteor.methods({
generateFile() {
const fileName = 'denis.txt';
let datapath = process.env.PWD + '/public/files/' + fileName;
if (Meteor.settings.environment === 'production') {
let meteorRoot = fs.realpathSync( process.cwd() + '/../' );
let publicPath = meteorRoot + '/web.browser/app/files/';
datapath = publicPath + fileName;
}
fs.writeFile(datapath, 'JUST SIMPLE TEXT',
function (err) {
if (err) {
throw err;
}
console.log('Done!');
}
);
}
});
}
});
所以我在/ public / files中创建了一个forlder。
在localhost上可以完美运行。我可以访问http://localhost:4000/files/denis.txt
之类的文件在Galaxy托管上,我看到它可以正常工作,并且我得到“完成!”日志中的响应。
但是当我尝试与www.mysite.com/files/denis.txt之类的文件取得联系时,找不到该文件。
任何想法如何解决?谢谢! :)