问题标签 [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 回答
323 浏览

node.js - Angular 6 SSH2 - 如何使用 Promise 处理错误?

我正在尝试使用角度处理来自 ssh2 的错误消息,

我试图做出处理它的承诺,但它不起作用,我是新手,对不起,如果它太糟糕了,但我不知道如何处理它。

这是我的承诺

这是我的错误信息:

没关系,我知道发生了什么,事情是我想在成功和错误时处理,例如,如果连接建立到 console.log 一个 ok,如果不是,那么 console.error 一个错误。

基本上我需要的是兑现承诺,任何人都可以帮助我吗?

非常感谢,如果我不清楚的话,我很抱歉。

0 投票
1 回答
506 浏览

node.js - Node.js - 将多个文件作为附件从服务器推送到客户端

我有一个应用程序,它允许用户在文本输入框中输入多个文件名,提交时这些文件名将从 SFTP 服务器获取并返回给客户端并下载。

该应用程序看起来像这样:

应用

POST 请求的代码如下所示:

我的问题是:如何从这个服务器端代码发送多个文件下载到客户端?

我在这里看到了这个问题:通过管道发送多个文件,但给出的答案并没有真正详细说明解决方案。我知道我的代码永远不会适用于多个文件,我只是将其附加为展示我迄今为止所拥有的东西的一种方式。它适用于下载 1 个文件,但仅此而已,因为根据我对服务器知识有限的了解,标头只发送一次,因此我无法在循环中设置文件名并逐个发送。

Mscdex 在我链接到的问题中的回答解释说:

没有办法像这样在一个响应中发送多个文件,除非您使用自己的特殊格式(标准多部分或其他)然后在客户端解析它(例如通过 XHR)。

有人可以解释并演示“使用您自己的特殊格式意味着什么”,因为我真的不知道。

另外,如果可能的话,我想避免压缩文件。

非常感谢,G

0 投票
1 回答
735 浏览

node.js - SFTP Node.js - Is it possible to list files using wildcards?

I'm trying to list all files in my SFTP server from a top level folder in Node.js using the npm module ssh2-sftp-client. However, I cannot find any documentation or previous posts which discuss whether using a wildcards in the file paths is possible. The file paths look like so:

There can be many different currencies, curves and dates - Hundreds in fact - I need a means of just listing every file name at the final level of the file structure.

I thought a sensible approach would be to use wildcards:

But this doesn't seem to work and I can't find anything to suggest it could. Can anyone advise how would be best to list every file from SFTP in Node.js?

Many thanks,

George

0 投票
1 回答
4105 浏览

node.js - 从 Node 上传多个文件到 SFTP

我正在尝试将多个文件上传到我的 SFTP 服务器,但没有任何运气。我看过这个例子:

如何使用 nodejs ssh2-sftp-client 发送(放置)多个文件?

但这似乎不是一种非常有效的方法,因为它会在每次文件上传时打开和关闭与服务器的连接。只是为了提供一些上下文,我的应用程序可能会尝试上传数千个文件。我将一组文件名从客户端发送到服务器并调用 SFTP.get 从远程位置获取文件,然后 SFTP.put 将该文件流放回另一个远程位置。这是通过 ssh2-sftp-client npm 模块完成的。

我尝试使用几种失败的不同方法上传多个文件。

首先:

这只是尝试获取相同的文件并每次以不同的文件名上传 10 次。但是,当我查看我的服务器时:

上传文件

仅上传了最后一个文件 - 查看日志时,它实际上只是尝试上传 testFile10.csv 10 次,而不是 testFile1.csv、testFile2.csv 等...

第二:

这是尝试简单地上传 2 个文件。但是,与上一个示例一样,仅上传了最后一个文件 - 在本例中为 testFile2.csv。

有什么建议我可以让它工作吗?甚至可以在 for 循环中放置多个文件吗?这似乎不是技术上应该有难度的东西我只是不明白为什么它甚至没有尝试从 0 循环到 10 它只是试图将 testFile10 放置 10 次。

这是一个非常关键的技术障碍,我需要在截止日期前克服它,所以我非常感谢你能提供的任何帮助。

提前谢谢了,

G

0 投票
0 回答
176 浏览

node.js - 在 node.js 中返回承诺的问题

我目前正在使用 ssh2-sftp-client 库与 sftp 连接,但我正在使用键盘交互式 on 方法来解决一个问题,我需要在 connect 和 on 方法都解决后返回解析。下面是我的代码

一切完成后返回resolve,我该如何实现呢?

0 投票
0 回答
968 浏览

node.js - ECONNRESET 在 node.js 中使用 sftp

我收到一个错误:第二次连接到 sftp 时读取 ECONNRESET 错误,第一次连接时上传数据,然后在第二次迭代中第二次建立连接时会引发错误。

当它第二次呼唤我时

0 投票
2 回答
1473 浏览

node.js - Node.js中的SFTP上传空文件

我正在处理一个项目时遇到问题,我正在使用一个名为 sftp-ssh2-client 的节点模块从我的 FTP 服务器下载文件,然后尝试将流传递回我的 FTP 服务器,但传递到另一个目录。

代码如下所示:

但是,当我拨入我的 FTP 服务器到文件被放置到的位置时,文件大小为 0,并且下载时已损坏。谁能告诉我我在这里做错了什么?

非常感谢,

G

0 投票
1 回答
172 浏览

php - 来自软件集合的 PHP SSH2

我已经从 Software Collections 安装了 PHP 7.1 并在 rh-php71-php-fpm 上运行。现在我需要使用 ssh2 连接到我的 SFTP,它不附带 Software Collection 之一。我该如何安装它?

我尝试使用以下说明进行安装:http: //programster.blogspot.com/2013/06/centos-64-install-ssh2-extension-for-php.html

然后将 .so 文件复制到 SC 安装的其他模块所在的位置:/opt/rh/rh-php71/root/usr/lib64/php/modules/ssh2.so 然后给它 +x

然后添加ini,其他人所在的位置:/etc/opt/rh/rh-php71/php.d/ssh2.ini

重新启动 rh-php71-php-fpm 和 httpd 但函数 ssh2_connect 仍未定义。

有什么帮助吗?

0 投票
1 回答
540 浏览

ubuntu - AWS EC2:SFTP SSH2 权限被拒绝

一些上下文:我正在为 AWS 使用 Bitnami WordPress。它位于 EC2 实例上。一段时间以来,我一直在使用相同的 PEM 文件将 SSH 和 SFTP 导入实例,并且使用 Yummy FTP Pro 在其他几个实例上仍然没有任何问题。

问题:我做了一些清理工作,以摆脱 WordPress 默认情况下的多余主题,一切正常。主题已删除。在关闭 SFTP 程序之前,我一定没有正确断开连接,因为现在在我成功进入 SFTP 之后,并且只有当我尝试修改文件时,我才会收到以下错误。

Couldn't get handle : SSH2_FX_PERMISSION_DENIED - Permission denied

我一直在搜索 StackOverflow 并在谷歌上搜索解决方案,但空手而归,却没有找到解决方案。

0 投票
0 回答
260 浏览

node.js - Node/Express API 和 sftp ECONNRESET 错误

我正在尝试在节点中创建一个简单的 API,该 API 通过 sftp 连接到远程并列出目录内容。它仅适用于第一个请求,任何后续请求都会产生以下错误。

我不知道如何解决这个问题。

我的代码