fontcolor_theme
Deepkit Filesystem

sFTP(SSH)文件系统

此适配器允许你将 sFTP(SSH)服务器用作文件系统。

它是 @deepkit/filesystem-sftp 的一部分,需要单独安装。

npm install @deepkit/filesystem-sftp

用法

import { Filesystem } from '@deepkit/filesystem';
import { FilesystemSftpAdapter } from '@deepkit/filesystem-sftp';

const adapter = new FilesystemSftpAdapter({
    root: 'folder',
    host: 'localhost',
    port: 22,
    username: 'user',
    password: 'password',
});
const filesystem = new Filesystem(adapter);

注意:你不应将凭据直接存储在代码中。相反,应使用环境变量或应用配置

此适配器使用 ssh2-sftp-client 的 sFTP 客户端。其所有配置选项都可以传递给该适配器的构造函数。

权限

如果 FTP 服务器运行在 Unix 环境中,你可以像本地文件系统适配器那样,使用 permissions 选项设置文件和文件夹的权限。

const adapter = new FilesystemFtpAdapter({
    // ...
    permissions: {
        file: {
            public: 0o644,
            private: 0o600,
        },
        directory: {
            public: 0o755,
            private: 0o700,
        }
    }
});


const filesystem = new Filesystem(adapter);

filesystem.write('/hello-public.txt', 'hello world', 'public');
filesystem.write('/hello-private.txt', 'hello world', 'private');

这里,文件 /hello-public.txt 将以权限 0o644 创建,而 /hello-private.txt 将以权限 0o600 创建。

English中文 (Chinese)한국어 (Korean)日本語 (Japanese)Deutsch (German)