问题标签 [ssh2-sftp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1716 浏览

node.js - 无法使用节点 js 从 SFTP 下载大文件

我正在尝试使用节点 js 使用 ssh2-sftp-client 模块从 SFTP 下载 4 GB 文件。我的主要问题是大约 40%(有时也不准确,有时也有 45 个)的文件在下载停止之后被下载,既没有发生错误,也没有在下载中显示任何进度。

我尝试过使用不同互联网的不同系统并面临同样的问题。请帮助我在这个问题上受到严重打击。

如果文件没有完全下载,那么它应该显示错误,或者它是否与 sftp 断开连接如何检查 ftp 是否连接

0 投票
1 回答
3201 浏览

node.js - 使用 aws lambda nodejs 从 SFTP 服务器访问和复制文件

我正在尝试使用 aws lambda 函数访问 sftp 服务器,但它一直返回 null,我不知道为什么。主机、用户名和密码是正确的,因为我使用 WinSCP 测试了连接。我也尝试连接到其他免费的 sftp 服务器,但响应一直返回 null。我不确定我在脚本中做错了什么。我确实安装了 npm 包,然后压缩文件并将压缩文件上传到 aws lambda。

0 投票
1 回答
406 浏览

javascript - 如何通过 API 调用 (Node.js) 从 ReadableStream 读取和下载文件?

我正在使用 ssh2-sftp-client 从远程服务器获取文件,一旦我得到()它们,我就会遇到读取和下载这些文件的问题。

起初,当 API 被命中时,我能够使用 get() 方法下载文件——我还可以在 console.log 语句中返回整个文件内容,然后它开始返回 Buffer 内容。我更新了这个:

npm install ssh2-sftp-client@3.1.0

现在我得到了一个 ReadbleStream。

我有上面的代码返回一个流,但我不确定如何获取文件 - write() 方法似乎在这里不起作用。

任何关于如何使用这个库来阅读和下载文件的建议或建议将不胜感激

0 投票
1 回答
2500 浏览

node.js - NodeJS SSH2未进行身份验证,定义了已知主机

我正在尝试使用 NodeJS 中的 SSH2 将文件从一台服务器传输到另一台服务器。但是,我们的网络管理员已经为授权用户设置了私钥,并且基本上可以通过命令行连接到其他服务器,就像这样...... $ ssh user@server2 我可以在不输入密码的情况下连接。我知道身份验证是在 known_hosts 中预定义的,但我正试图让它在 nodejs 中工作。

SSH2 配置中似乎需要 privateKey 或密码。有人知道这样的解决方法吗?还是我只是做错了什么?我能找到的唯一键是在 known_hosts 文件中,但它的格式似乎不正确。

这就是我正在使用的...

0 投票
0 回答
261 浏览

php - 如何使用 sftp 和 PHP 提高上传速度?

在我的项目中,我使用 sftp ( https://www.php.net/manual/en/book.ssh2.php ) 将文件上传到远程服务器。

代码上传文件:

但我跟踪并看到上传速度很慢。

我研究发现:为什么 SSH2 SFTP 比 FTP 和 FTPS 慢这么多?

并且: http: //phpseclib.sourceforge.net/

如何使用 sftp 和 PHP 提高上传速度?

请帮我。谢谢

0 投票
1 回答
168 浏览

php - ssh2_connect 定义显式 TLS

尝试使用以下代码连接到远程 sftp:

我得到的结果是“连接失败”

远程 sftp 服务器需要基于 TLS 的显式 FTP(这是我使用 filezilla 进行连接的方式 - 并且连接正常)

如何使用 ssh2_connect 在 TLS 上定义显式 FTP?

编辑 也尝试与 ftp_ssl_connect 连接

这里的结果相同:“连接失败”

0 投票
1 回答
691 浏览

google-cloud-functions - 使用 Cloud Function 将图像 URL 上传到 SFTP 服务器

我正在处理一项使用 Firebase 功能将图像上传到 SFTP 服务器的任务。但是图像源不是来自我的本地计算机,而是一个 http URL,例如https://image.com/abc.jpg我正在使用ssh2-sftp-client npm 包。目前我将我的mac用于客户端和服务器,当我访问本地文件(/Users/shared/abc.jpeg)并将其上传到本地服务器(/Uesrs/shared/sftp-server/abc. JPEG)。但是当我尝试访问https://image.com/abc.jpg时。并将其上传到本地服务器我收到错误消息"ENOENT: no such file or directory/ ..."。下面是我的代码

我第一次访问 sftp 服务器和任何人的建议将不胜感激。

0 投票
1 回答
896 浏览

javascript - 如何通过 ssh2 Node.js 模块(在 Electron 应用程序中)使用 SFTP 一次下载/上传多个文件?

我正在使用 Electron 构建一个简单的 SFTP 客户端,并尝试使用 ssh2 模块和该模块中的 SFTPStream 一次下载或上传多个文件。我尝试了许多不同的方法结构,其中一些包括使用 es6-promise-pool。我所做的每一次尝试都会导致文件数组中的一个文件被正确传输,然后是后续的

MaxListenersExceededWarning:检测到可能的 EventEmitter 内存泄漏。11 个 sftp_message 监听器添加到 [EventEmitter]。使用emitter.setMaxListeners() 增加限制

消息显示在控制台中,其余文件不会传输。我不确定如何更改我的方法结构以防止这种情况发生。我正在使用 ipcRenderer 告诉 ipcMain 执行我将在此处显示的方法(例如,这是我上传文件的结构)。

诚然,使用承诺池对我来说是新事物,我不确定我是否要正确使用它们。关于此主题的另一篇文章使用承诺池来防止我遇到的问题发生,但该示例不涉及 Electron 应用程序(我不知道这是否相关)。我很感激我能得到的任何帮助!

0 投票
1 回答
349 浏览

node.js - 在 SFTP 内部循环承诺不会将文件数据下载到本地文件?

我的总体问题是,一旦我过滤了在过去 5 分钟内添加的文件,我就会遍历返回的对象数组。从那里我将根远程文件名附加到最近 5 分钟添加的文件返回的名称。fastget 不会向我的本地文件写入任何内容。

我已经在循环外测试了附加的路由并且它有效,我是否由于某种原因在循环内丢失了我的承诺数据?

0 投票
0 回答
122 浏览

node.js - 将可写流数据解析为 JSON?

我正在将接收到的数据 (CSV) 写入本地 txt 文件,并希望在写入本地文件之前将其解析为 JSON,有什么建议吗?

我尝试使用缓冲区来获取数据,但我只是取回本地文件路径?

我研究了 csvtoJSON 包,但他们似乎无法解决这个问题?希望我错了,提前感谢最好的开发社区!