package server
import (
"bytes"
"crypto/sha256"
"encoding/hex"
"fmt"
"io"
"io/ioutil"
"mime"
"os"
"path/filepath"
"strings"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/service/s3"
)
type config struct {
NoCompress bool `opts:"help=disable gzip "`
S3Component string `opts:"help=s3 component name"`
Base string `opts:"help=base directory (defaults to cwd)"`
Targets []string `opts:"mode=arg, help=<target> file or directory to upload"`
}
var c = config{
S3Component: "s3",
Base: "",
}
func (s *Server) DeleteXX(fileName string) (string, error) {
sc := c.S3Component
//ensure we have an s3 component
bucket := s.Env.Profile[sc+"_Bucxx"]
if bucket == "" {
buckets := []string{}
for k := range s.Env.Profile {
if strings.HasSuffix(k, "_Bucket") {
buckets = append(buckets, strings.TrimSuffix(k, "_Buckxx"))

这段代码展示了如何使用Golang与AWS S3进行交互,包括上传、下载和删除文件。通过`s3Client`,实现了GetObject、DeleteObject和PutObject等操作,并且在上传时计算文件的SHA256哈希值作为元数据。

1059

被折叠的 条评论
为什么被折叠?



