Documentation ¶
Overview ¶
Package remote 提供多种远程存储方式的统一接口。
Index ¶
- Constants
- type COSClient
- func (c *COSClient) Close() error
- func (c *COSClient) Delete(ctx context.Context, remotePath string) error
- func (c *COSClient) Download(ctx context.Context, remotePath string) ([]byte, error)
- func (c *COSClient) List(ctx context.Context, options ListOptions) (ListResult, error)
- func (c *COSClient) Upload(ctx context.Context, remotePath string, data []byte) error
- type COSConfig
- type Client
- type Error
- type FTPClient
- func (c *FTPClient) Close() error
- func (c *FTPClient) Delete(ctx context.Context, remotePath string) error
- func (c *FTPClient) Download(ctx context.Context, remotePath string) ([]byte, error)
- func (c *FTPClient) List(ctx context.Context, options ListOptions) (ListResult, error)
- func (c *FTPClient) Upload(ctx context.Context, remotePath string, data []byte) error
- type FTPConfig
- type FileInfo
- type ListOptions
- type ListResult
- type OSSClient
- func (c *OSSClient) Close() error
- func (c *OSSClient) Delete(ctx context.Context, remotePath string) error
- func (c *OSSClient) Download(ctx context.Context, remotePath string) ([]byte, error)
- func (c *OSSClient) List(ctx context.Context, options ListOptions) (ListResult, error)
- func (c *OSSClient) Upload(ctx context.Context, remotePath string, data []byte) error
- type OSSConfig
- type SFTPClient
- func (c *SFTPClient) Close() error
- func (c *SFTPClient) Delete(ctx context.Context, remotePath string) error
- func (c *SFTPClient) Download(ctx context.Context, remotePath string) ([]byte, error)
- func (c *SFTPClient) List(ctx context.Context, options ListOptions) (ListResult, error)
- func (c *SFTPClient) Upload(ctx context.Context, remotePath string, data []byte) error
- type SFTPConfig
Constants ¶
View Source
const ( TypeFTP = "ftp" // FTP存储类型 TypeSFTP = "sftp" // SFTP存储类型 TypeCOS = "cos" // 腾讯云COS存储类型 TypeOSS = "oss" // 阿里云OSS存储类型 )
存储类型常量定义
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type COSClient ¶
type COSClient struct {
// contains filtered or unexported fields
}
COSClient 实现了腾讯云COS存储的客户端。 注意:COSClient是并发安全的。
func NewCOSClient ¶
NewCOSClient 创建一个新的COS客户端。
func (*COSClient) List ¶
func (c *COSClient) List(ctx context.Context, options ListOptions) (ListResult, error)
List 实现了Client接口的List方法。
type Client ¶
type Client interface { Upload(ctx context.Context, remotePath string, data []byte) error Download(ctx context.Context, remotePath string) ([]byte, error) Delete(ctx context.Context, remotePath string) error List(ctx context.Context, options ListOptions) (ListResult, error) Close() error }
Client 定义了远程存储的统一接口。 注意:所有方法都应是并发安全的。
type FTPClient ¶
type FTPClient struct {
// contains filtered or unexported fields
}
FTPClient 实现了FTP存储的客户端。 注意:FTPClient是并发安全的。
func NewFTPClient ¶
NewFTPClient 创建一个新的FTP客户端。
func (*FTPClient) List ¶
func (c *FTPClient) List(ctx context.Context, options ListOptions) (ListResult, error)
List 实现了Client接口的List方法。
type FileInfo ¶
type FileInfo struct { Name string // 文件名 Size int64 // 文件大小(字节) ModTime time.Time // 修改时间 IsDir bool // 是否为目录 }
FileInfo 定义了文件的元数据信息
type ListOptions ¶
type ListOptions struct { Prefix string // 文件名前缀过滤,可选 Marker string // 分页标记,可选 MaxKeys int // 每次返回的最大文件数量,可选 }
ListOptions 定义了分页和过滤选项
type ListResult ¶
type ListResult struct { Files []FileInfo // 文件信息列表 NextMarker string // 下一个分页标记 IsTruncated bool // 是否还有更多数据 }
ListResult 定义了List方法的返回结果
type OSSClient ¶
type OSSClient struct {
// contains filtered or unexported fields
}
OSSClient 实现了阿里云OSS存储的客户端。 注意:OSSClient是并发安全的。
func NewOSSClient ¶
NewOSSClient 创建一个新的OSS客户端。
func (*OSSClient) List ¶
func (c *OSSClient) List(ctx context.Context, options ListOptions) (ListResult, error)
List 实现了Client接口的List方法。
type SFTPClient ¶
type SFTPClient struct {
// contains filtered or unexported fields
}
SFTPClient 实现了SFTP存储的客户端。 注意:SFTPClient是并发安全的。
func NewSFTPClient ¶
func NewSFTPClient(config SFTPConfig, args ...ssh.HostKeyCallback) (*SFTPClient, error)
NewSFTPClient 创建一个新的SFTP客户端。
func (*SFTPClient) Delete ¶
func (c *SFTPClient) Delete(ctx context.Context, remotePath string) error
Delete 实现了Client接口的Delete方法。
func (*SFTPClient) List ¶
func (c *SFTPClient) List(ctx context.Context, options ListOptions) (ListResult, error)
List 实现了Client接口的List方法。
Click to show internal directories.
Click to hide internal directories.