Skip to content

informat.sftp SFTP相关 ​

概述 ​

使用informat.sftp实现sftp客户端相关功能。


createClient ​

初始化sftp客户端实例

javascript
informat.sftp.createClient()

返回值 类型为SftpClient

SftpClient ​

login ​

账号密码登录sftp服务器

js
client.login(username,password,host,port)
参数类型描述
usernameString用户名
passwordString密码
hostStringsftp服务器主机
portIntegersftp服务器端口

loginWithPrivateKey ​

私钥登录sftp服务器

js
client.loginWithPrivateKey(username,privateKey,host,port)
参数类型描述
usernameString用户名
privateKeyString私钥
hostStringsftp服务器主机
portintsftp服务器端口

logout ​

登出

js
client.logout()

cd ​

用于改变当前工作目录

js
client.cd(path)
参数类型描述
pathString指定要更改到的目录的路径

put ​

上传文件到 SFTP 服务器

js
client.put(localPath, dst)
参数类型描述
localPathString上传的app沙盒环境文件的路径
remotePathStringSFTP服务器上的文件路径

put ​

上传文件到 SFTP 服务器

js
client.put(localPath, dst, mode)
参数类型描述
localPathString上传的app沙盒环境文件的路径
remotePathStringSFTP服务器上的文件路径
modeint模式,可选值如下:
0:目标文件已存在,它将被覆盖。这是默认模式
1:如果传输被中断,传输将从上次中断的地方继续,而不是重新开始
2:如果目标文件已存在,上传的数据将追加到文件的末尾

downloadFile ​

从SFTP服务器下载指定文件到本地app沙盒环境

js
client.downloadFile(remotePath, localPath)
参数类型描述
remotePathString远程文件路径
localPathString本地app沙盒环境路径

ls ​

列出 SFTP 服务器上指定目录中的文件和目录

js
client.ls(path)
参数类型描述
pathString列出内容的远程目录的路径

返回值 类型为Array<SftpFile> 返回文件列表

mkdir ​

在 SFTP 服务器上创建一个新目录

js
client.mkdir(path)
参数类型描述
pathString创建的新目录的路径

pwd ​

获取当前在 SFTP 会话中的工作目录

js
client.pwd()

返回值 类型为String 返回当前在 SFTP 会话中的工作目录

disconnect ​

结束与远程 SSH 服务器的会话。

js
client.disconnect()

对于防止网络资源和文件描述符泄漏至关重要。如果不调用此方法,可能会导致长期运行的应用程序累积未关闭的连接,进而影响性能或导致资源耗尽。

以下是一个完整的例子

js
var host = "192.168.1.120";
var port = 22;
var userName = "sftpuser";
var password = "123456";
var client=null;
try{
    client=informat.sftp.createClient();
    client.login(userName, password, host, port);
    console.log(client.pwd())
    client.mkdir('test/d');
    client.put("logo.jpg", 'test/d/logo.jpg');//注意 需要先上传一个文件到app沙盒环境
    client.downloadFile("test/d/logo.jpg", "sftp/logo.jpg");
}finally{
    if (client!= null) {
        client.disconnect();
    }
}