s3

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Region      string
	Bucket      string
	AccessKeyID string

	URL string
	// contains filtered or unexported fields
}

Client contains the DO configuration and methods

func NewClient

func NewClient(ctx context.Context, url, region, accessKey, secretKey, bucket string) (*Client, error)

func (*Client) CopyFile added in v1.6.7

func (c *Client) CopyFile(ctx context.Context, input *s3.CopyObjectInput) (*s3.CopyObjectOutput, error)

func (*Client) DeleteFile

func (c *Client) DeleteFile(ctx context.Context, input *s3.DeleteObjectInput) (*s3.DeleteObjectOutput, error)

func (*Client) FileExists

func (c *Client) FileExists(ctx context.Context, input *s3.HeadObjectInput) (bool, error)

func (*Client) GetPrivateURL

func (c *Client) GetPrivateURL(ctx context.Context, input *s3.GetObjectInput) (string, error)

func (*Client) ListBuckets

func (c *Client) ListBuckets(ctx context.Context) ([]types.Bucket, error)

func (*Client) ListFiles

func (c *Client) ListFiles(ctx context.Context, input *s3.ListObjectsInput) (*s3.ListObjectsOutput, error)

func (*Client) PresignPostObject added in v1.7.0

func (c *Client) PresignPostObject(ctx context.Context, input *s3.PutObjectInput, expires time.Duration, conditions ...interface{}) (*PresignedPostForm, error)

func (*Client) PresignPutObject added in v1.7.0

func (c *Client) PresignPutObject(ctx context.Context, input *s3.PutObjectInput, expires time.Duration) (*PresignedRequest, error)

func (*Client) UploadFile

func (c *Client) UploadFile(ctx context.Context, input *s3.PutObjectInput) (*s3.PutObjectOutput, error)

type Config

type Config struct {
	URL         string
	Region      string
	AccessKeyID string
	Bucket      string
	FilePrefix  string
}

type PresignedPostForm added in v1.7.0

type PresignedPostForm struct {
	URL    string            `json:"url"`
	Fields map[string]string `json:"fields"`
}

type PresignedRequest added in v1.7.0

type PresignedRequest struct {
	URL     string      `json:"url"`
	Method  string      `json:"method"`
	Headers http.Header `json:"headers,omitempty"`
}

Jump to

Keyboard shortcuts

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