github.com/qiniu/go-sdk/v7@v7.27.0/examples/form_upload_simple/main.go (about) 1 package main 2 3 import ( 4 "context" 5 "fmt" 6 "os" 7 8 "github.com/qiniu/go-sdk/v7/auth" 9 "github.com/qiniu/go-sdk/v7/storage" 10 ) 11 12 var ( 13 accessKey = os.Getenv("QINIU_ACCESS_KEY") 14 secretKey = os.Getenv("QINIU_SECRET_KEY") 15 bucket = os.Getenv("QINIU_TEST_BUCKET") 16 localFile = os.Getenv("LOCAL_FILE") 17 key = os.Getenv("KEY") 18 ) 19 20 func main() { 21 putPolicy := storage.PutPolicy{ 22 Scope: bucket + ":" + key, 23 } 24 25 mac := auth.New(accessKey, secretKey) 26 upToken := putPolicy.UploadToken(mac) 27 cfg := storage.Config{} 28 // 空间对应的机房 29 cfg.Zone = &storage.ZoneHuadong 30 // 是否使用https域名 31 cfg.UseHTTPS = false 32 // 上传是否使用CDN上传加速 33 cfg.UseCdnDomains = false 34 35 // 构建表单上传的对象 36 formUploader := storage.NewFormUploader(&cfg) 37 ret := storage.PutRet{} 38 // 可选配置 39 putExtra := storage.PutExtra{ 40 Params: map[string]string{ 41 "x:name": "github logo", 42 }, 43 } 44 err := formUploader.PutFile(context.Background(), &ret, upToken, key, localFile, &putExtra) 45 if err != nil { 46 fmt.Println(err) 47 return 48 } 49 fmt.Println(ret.Key, ret.Hash) 50 }