s3

package
v1.5.34 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 23, 2024 License: MIT Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Driver

type Driver struct {
	Policy *model.Policy
	// contains filtered or unexported fields
}

Driver 适配器模板

func NewDriver

func NewDriver(policy *model.Policy) (*Driver, error)

func (*Driver) CORS

func (handler *Driver) CORS() error

CORS 创建跨域策略

func (*Driver) CancelToken

func (handler *Driver) CancelToken(ctx context.Context, uploadSession *serializer.UploadSession) error

取消上传凭证

func (*Driver) Delete

func (handler *Driver) Delete(ctx context.Context, files []string) ([]string, error)

Delete 删除一个或多个文件, 返回未删除的文件,及遇到的最后一个错误

func (*Driver) Get

func (handler *Driver) Get(ctx context.Context, path string) (response.RSCloser, error)

Get 获取文件

func (*Driver) InitS3Client

func (handler *Driver) InitS3Client() error

InitS3Client 初始化S3会话

func (*Driver) List

func (handler *Driver) List(ctx context.Context, base string, recursive bool) ([]response.Object, error)

List 列出给定路径下的文件

func (*Driver) Meta

func (handler *Driver) Meta(ctx context.Context, path string) (*MetaData, error)

Meta 获取文件信息

func (*Driver) Put

func (handler *Driver) Put(ctx context.Context, file fsctx.FileHeader) error

Put 将文件流保存到指定目录

func (*Driver) Source

func (handler *Driver) Source(
	ctx context.Context,
	path string,
	baseURL url.URL,
	ttl int64,
	isDownload bool,
	speed int,
) (string, error)

Source 获取外链URL

func (*Driver) Thumb

func (handler *Driver) Thumb(ctx context.Context, path string) (*response.ContentResponse, error)

Thumb 获取文件缩略图

func (*Driver) Token

func (handler *Driver) Token(ctx context.Context, ttl int64, uploadSession *serializer.UploadSession, file fsctx.FileHeader) (*serializer.UploadCredential, error)

Token 获取上传策略和认证Token

type MetaData

type MetaData struct {
	Size uint64
	Etag string
}

MetaData 文件信息

type UploadPolicy

type UploadPolicy struct {
	Expiration string        `json:"expiration"`
	Conditions []interface{} `json:"conditions"`
}

UploadPolicy S3上传策略

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL