阿里云oss
This commit is contained in:
@@ -40,9 +40,9 @@ func (c *ALiYunOSSClient) GetSignUrl(bucket string, key string, expires time.Dur
|
||||
result, err = c.ossClient.Presign(
|
||||
context.Background(),
|
||||
&oss.PutObjectRequest{
|
||||
Bucket: oss.Ptr(bucket),
|
||||
Key: oss.Ptr(key),
|
||||
//ContentType: oss.Ptr("application/octet-stream"),
|
||||
Bucket: oss.Ptr(bucket),
|
||||
Key: oss.Ptr(key),
|
||||
ContentType: oss.Ptr("application/octet-stream"),
|
||||
},
|
||||
oss.PresignExpires(expires),
|
||||
)
|
||||
@@ -52,6 +52,19 @@ func (c *ALiYunOSSClient) GetSignUrl(bucket string, key string, expires time.Dur
|
||||
return
|
||||
}
|
||||
|
||||
func (c *ALiYunOSSClient) GetSignUrlByPutObjectRequest(req *oss.PutObjectRequest, expires time.Duration) (result *oss.PresignResult, err error) {
|
||||
// 生成PutObject的预签名URL
|
||||
result, err = c.ossClient.Presign(
|
||||
context.Background(),
|
||||
req,
|
||||
oss.PresignExpires(expires),
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// PutForLocalFile 上传本地文件
|
||||
func (c *ALiYunOSSClient) PutForLocalFile(bucket, key, path string) (result *oss.PutObjectResult, err error) {
|
||||
// 创建上传对象的请求
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package oss_tool
|
||||
|
||||
import (
|
||||
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
|
||||
"os"
|
||||
"testing"
|
||||
)
|
||||
@@ -36,6 +37,22 @@ func TestALiYunOSSClient_GetSignUrl(t *testing.T) {
|
||||
t.Log(sign)
|
||||
}
|
||||
|
||||
func TestALiYunOSSClient_GetSignUrlByPutObjectRequest(t *testing.T) {
|
||||
err := client.NewAliYunOSS()
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
req := &oss.PutObjectRequest{}
|
||||
req.Bucket = oss.Ptr("")
|
||||
req.Key = oss.Ptr("test/upload/bizhi2.jpg")
|
||||
req.ContentType = oss.Ptr("application/octet-stream")
|
||||
sign, err := client.GetSignUrlByPutObjectRequest(req, 0)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
t.Log(sign)
|
||||
}
|
||||
|
||||
func TestALiYunOSSClient_PutForLocalFile(t *testing.T) {
|
||||
err := client.NewAliYunOSS()
|
||||
if err != nil {
|
||||
|
Reference in New Issue
Block a user