node.js - node.js如何从远程服务器读取流中的文件
问题描述
在 node.js 中,我试图在 filechange 上观看和读取文本文件。为此,我使用下面的代码,它工作得非常好。
var fs = require('fs'),bite_size = 256,readbytes = 0,file;
fs.open('testread.txt', 'r', function(err, fd) {
file = fd; //readsome();
var func = (function readsome() {
var stats = fs.fstatSync(file); // yes sometimes async does not make sense!
if(stats.size<readbytes+1) {
setTimeout(readsome, 1000);
}
else {
fs.read(file, new Buffer(bite_size), 0, bite_size, readbytes, function (err, bytecount, buff) {
console.log(buff.toString('utf-8', 0, bytecount));
readbytes+=bytecount;
process.nextTick(readsome);
});
}
})();
});
但这仅适用于本地文件,现在我需要以相同的方式从远程服务器(可能是 linux 或 windows)读取文本文件。
请帮助,我如何使用远程服务器登录信息,如下所示
IP address = "XXX.XXX.XX.XX";,
username = username,
password = password,
filepath = "/root/testread.txt" or "D:\testread.txt"
并从远程服务器文件路径中的文本文件中读取数据。
解决方案
fs 使用本地文件系统。要访问远程文件,您需要使用一些网络协议(例如 Windows 的 NTFS 和 linux 的 ssh 或 ftp)这些协议将文件暴露给远程访问,您无法访问不使用它们的远程主机的文件系统
推荐阅读
- php - composer global 需要 laravel/installer 不工作
- python - 正则表达式获取 < > 之间的值
- javascript - 如何在 JavaScript 中随机打乱列表项
- ruby-on-rails - 父对象只拾取 has_many 中的第一个子对象
- php - 如何使用 Jquery Ajax 将表单输入字段发送为 JSON 格式
- java - 确定回文的程序只执行 else 条件
- python - 获取具有相同数字和连续索引的子数组
- json - Alexa 一直回复“请求的技能的响应有问题”
- php - 如何使用 json_encode 对两个数组进行编码?
- sql-server - SQL Server CONTAINS 无法按预期工作