1 Star 0 Fork 0

yanpin-dev/aliyun-oss-go-sdk

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
sign_url.go 1.53 KB
一键复制 编辑 原始数据 按行查看 历史
hangzws 提交于 2019-04-10 10:36 +08:00 . fix code that is not concise and safe
package sample
import (
"fmt"
"io/ioutil"
"os"
"strings"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
// SignURLSample signs URL sample
func SignURLSample() {
// Create bucket
bucket, err := GetTestBucket(bucketName)
if err != nil {
HandleError(err)
}
// Put object
signedURL, err := bucket.SignURL(objectKey, oss.HTTPPut, 60)
if err != nil {
HandleError(err)
}
var val = "花间一壶酒,独酌无相亲。 举杯邀明月,对影成三人。"
err = bucket.PutObjectWithURL(signedURL, strings.NewReader(val))
if err != nil {
HandleError(err)
}
// Put object with option
options := []oss.Option{
oss.Meta("myprop", "mypropval"),
oss.ContentType("image/tiff"),
}
signedURL, err = bucket.SignURL(objectKey, oss.HTTPPut, 60, options...)
if err != nil {
HandleError(err)
}
err = bucket.PutObjectFromFileWithURL(signedURL, localFile, options...)
if err != nil {
HandleError(err)
}
// Get object
signedURL, err = bucket.SignURL(objectKey, oss.HTTPGet, 60)
if err != nil {
HandleError(err)
}
body, err := bucket.GetObjectWithURL(signedURL)
if err != nil {
HandleError(err)
}
defer body.Close()
// Read content
data, err := ioutil.ReadAll(body)
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
fmt.Println("data:", string(data))
err = bucket.GetObjectToFileWithURL(signedURL, "mynewfile-1.jpg")
if err != nil {
HandleError(err)
}
// Delete the object and bucket
err = DeleteTestBucketAndObject(bucketName)
if err != nil {
HandleError(err)
}
fmt.Println("SignURLSample completed")
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/yanpin-dev/aliyun-oss-go-sdk.git
git@gitee.com:yanpin-dev/aliyun-oss-go-sdk.git
yanpin-dev
aliyun-oss-go-sdk
aliyun-oss-go-sdk
v2.1.8

搜索帮助