我正在尝试使用 jsftp 将文件放在我的服务器上。每次运行代码时,我都会收到一个写入服务器的文件,但它有 0 字节。我确信用户:主机:等是正确的。
这是代码。
function uploadHours() {
var jsftp = require("jsftp");
var ftp = new jsftp({
host: localStorage.host,
port: Number(localStorage.port), // defaults to 21
user: localStorage.user, // defaults to "anonymous"
pass: localStorage.ftpPass // defaults to "@anonymous"
});
ftp.auth(localStorage.user, localStorage.ftpPass, function(hadErr) {
if (!hadErr)
alert("auth succesfull")
});
;
ftp.put('C:/Program Files/Adobe/Adobe After Effects CC 2014/Support Files/Hours Tracker/index2.html', '/public_html/indexTester2.html', function(hadErr) {
if (!hadError)
alert("File transferred successfully!");
});
}
最佳答案
我想我需要先阅读该文件。这是有效的。
var JSFtp = require("jsftp");
var fs = require("fs");
var Ftp = new JSFtp({
host: localStorage.host,
port: Number(localStorage.port),
user: localStorage.user,
pass: localStorage.ftpPass
});
var local = filePath;
var remote = localStorage.ftpPath + logName;
fs.readFile(local, function(err, buffer) {
if(err) {
console.error(err);
callback(err);
}
else {
Ftp.put(buffer, remote, function(err) {
if (err) {
console.error(err);
callback(err);
}
else {
alert(file + " - uploaded successfuly");
callback();
}
});
}
});
关于javascript - 使用 jsftp 上传文件会导致服务器上的文件大小为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26920459/