我正在尝试实现一个文件上传器,其中一个HTML输入文件由WebSocket发送到Nodejs服务器.
试图从HTML的FileReader API读取BLOB和二进制字符串中的文件,并将其发送到Nodejs服务器,以便将其写入服务器中的文件.在Nodejs部分中尝试使用ascii或base 64编码的createWriteStream和writeFile.
保存在服务器中的文件仍然无法正常工作.
我错过了什么吗?
谢谢
UPDATE
客户
var uploader = $("#uploader"),
files = uploader.prop('files'),
file_reader = new FileReader();
file_reader.onload = function(evt) {
socketClient.write({
'action': 'ExtensionSettings->upload',
'domain': structureUser.domain,
'v_id': ext,
'file': file_reader.result
});
};
file_reader.readAsDataURL(files[0]);
//readAsDataURL
uploader.replaceWith(uploader.clone());
Run Code Online (Sandbox Code Playgroud)
服务器
var stream = fs.createWriteStream("file");
stream.once("open", function() {
stream.write(msg.file, "base64");
stream.on('finish', function() {
stream.close();
});
});
Run Code Online (Sandbox Code Playgroud) 我试图升级docker,正如其手册中提到的那样
sudo apt-get upgrade docker-engine
Run Code Online (Sandbox Code Playgroud)
由于某些未知的原因,这将导致我的linux(linux-images,lightdm,jvm等)中的几乎每个包和库的获取和解包.这已经持续了一个小时了.
有没有人知道出了什么问题以及如何在不搞乱我的Ubuntu安装的情况下停止它?
(如果您计划使用此升级您的docker,请不要.如果您喜欢Ubuntu,则清除重新安装是一个更好的选择)
docker ×1
file-upload ×1
html ×1
javascript ×1
node.js ×1
ubuntu-14.04 ×1
upgrade ×1
websocket ×1