golang中的aliyunoss
生活随笔
收集整理的這篇文章主要介紹了
golang中的aliyunoss
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
安裝
go get -u github.com/aliyun/aliyun-oss-go-sdk/ossoss相關術語
權限
https://help.aliyun.com/document_detail/100676.html?spm=a2c4g.11186623.6.639.c8974c7dsCQHx3
文件上傳
import ("fmt""github.com/aliyun/aliyun-oss-go-sdk/oss" )const (//OSSBucket: oss bucket名OSSBucket = ""//OSSEndpoint: oss endpointOSSEndpoint = ""//oss訪問keyOSSAccesskeyID = ""//oss訪問key secretOSSAccessKeySecret = "" )var ossCli *oss.Client//創建oss client對象 func Client() *oss.Client {if ossCli != nil {return ossCli}ossCli, err := oss.New(OSSEndpoint, OSSAccesskeyID, OSSAccessKeySecret)if err != nil {fmt.Println(err.Error())return nil}return ossCli }//獲取bucket存儲空間 func Bucket() *oss.Bucket {cli := Client()if cli != nil {bucket, err := cli.Bucket(OSSBucket)if err != nil {fmt.Println(err.Error())return nil}return bucket}return nil }func main() {//路徑ossPath := "/oss/" + "/path"//文件newFile := nilerr := Bucket().PutObject(ossPath, newFile)if err != nil {fmt.Println(err.Error())return}fmt.Println("---上傳成功---") }文件下載
//DownloadUrl 臨時授權下載 func DownloadUrl(objName string) string {//get方法訪問, 過期時間3600秒signedUrl, err := Bucket().SignURL(objName, oss.HTTPGet, 3600)if err != nil {fmt.Println(err.Error())return ""}return signedUrl }對象生命周期管理
//針對指定bucket設置生命周期規則 func BuildLifecycleRule(bucketName string) {//設置規則,規則可以設置多個//表示前綴為test的對象(文件)距離最后修改時間30天后過期ruleTest1 := oss.BuildLifecycleRuleByDays("rule1", "test/", true, 30)rules := []oss.LifecycleRule{ruleTest1}//把指定的bucket設置這個規則Client().SetBucketLifecycle(bucketName, rules) }?
總結
以上是生活随笔為你收集整理的golang中的aliyunoss的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: golang中的redigo
- 下一篇: golang中的对称加密