【发布时间】:2017-10-17 18:08:31
【问题描述】:
我正在尝试将文件从客户端发送到服务器并将其写入目录中。
我可以发送文件,但由于此错误而无法写入:
I20170518-07:09:54.810(2)? Exception while invoking method 'file-upload' Error: Unknown encoding:
I20170518-07:09:54.810(2)? hi i am the content of the file
I20170518-07:09:54.810(2)? at assertEncoding (fs.js:88:11)
I20170518-07:09:54.811(2)? at Object.fs.writeFileSync (fs.js:1153:3)
I20170518-07:09:54.811(2)? at [object Object].fileUpload (server/helpers_docker.js:349:10)
I20170518-07:09:54.811(2)? at maybeAuditArgumentChecks (packages/ddp-server/livedata_server.js:1711:12)
I20170518-07:09:54.811(2)? at packages/ddp-server/livedata_server.js:711:19
I20170518-07:09:54.811(2)? at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1)
I20170518-07:09:54.811(2)? at packages/ddp-server/livedata_server.js:709:40
I20170518-07:09:54.812(2)? at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1)
I20170518-07:09:54.812(2)? at packages/ddp-server/livedata_server.js:707:46
I20170518-07:09:54.812(2)? at Session.method (packages/ddp-server/livedata_server.js:681:23)
I20170518-07:09:54.812(2)? at packages/ddp-server/livedata_server.js:551:43
所以我知道编码是未知的,但我指定了它。
这是客户端:
'change .file-upload-input': function(event, template){
var func = this;
var file = event.currentTarget.files[0];
var reader = new FileReader();
reader.onload = function(fileLoadEvent) {
Meteor.call('file-upload', file.name, reader.result);
console.log(file);
};
reader.readAsBinaryString(file);
},
这里是服务器(我在其中指定了编码):
'file-upload': function (fileInfo, fileData) {
fs.writeFileSync(process.env.HOME + '/compose/area/',fileInfo, fileData,'utf8');
}
任何帮助将不胜感激
【问题讨论】:
标签: javascript meteor fs writefile