Meteor fs.writeFile()不';“流星0.6.5.1”上的t工作

Meteor fs.writeFile()不';“流星0.6.5.1”上的t工作,meteor,Meteor,我使用Meteor 0.6.4.1并使用Npm.require('fs')和fs.writeFile()保存文件。下面是我用来测试它的代码:。我将Meteor更新为0.6.5.1,并得到以下错误: (STDERR) app/server/save_file.js:18 (STDERR) throw (new Meteor.Error(500, 'Failed to save file. ' + err)); (STDERR) ^ (STDERR) E

我使用Meteor 0.6.4.1并使用
Npm.require('fs')
fs.writeFile()
保存文件。下面是我用来测试它的代码:。我将Meteor更新为0.6.5.1,并得到以下错误:

(STDERR) app/server/save_file.js:18
(STDERR)         throw (new Meteor.Error(500, 'Failed to save file. ' + err));
(STDERR)                ^
(STDERR) Error: Failed to save file. Error: ENOENT, open 'public/carlos.png' [500]
(STDERR)     at Meteor.methods.saveFile (app/server/save_file.js:18:16)
(STDERR)     at fs.writeFile (fs.js:746:21)
(STDERR)     at Object.oncomplete (fs.js:297:15)

我知道Meteor 0.6.5上的节点版本从0.8.18更改为0.8.24。这是0.8.24节点版本还是Meteor 0.6.5版本的bug?有没有办法解决它,或者我必须继续使用0.6.4.1 Meteor版本?

在Meteor 0.6.5中,他们更改了服务器上下文中的当前工作目录,它以前是Meteor根目录,但现在是
MyProject/.Meteor/local/build/programs/server

因此,如果您想从服务器端应用程序访问公用文件夹中的内容,可以尝试以下路径:
。/../../../../../public/


警告:将文件写入
public
可能会导致服务器重新启动并导致未定义的行为。

稍微修改代码以获得更多详细信息。特别是行
throw(newmeteor.Error(500,'未能保存文件',err))
to
throw(new Meteor.Error(500,'Failed to save file“+err));
查看回调作为错误返回的内容的更多详细信息。或者查找应该可见的堆栈跟踪(可能再往下一点,您没有包括它?)我编辑了代码,但只修改了四行,并增加了一些关于错误的信息。我复制了所有的行,之后就没有了。