使用 GO 获取腾讯云 COS 临时授权与跨域设置
一、腾讯云
1) 这个设置可以根据自己需求来看,也可以用主账号拿到 AK/SK 即可 2) 用子用户是为了安全也防止出现其他问题
1.1、进入访问控制
- 进入 控制台>访问控制>用户>用户列表
1.2、创建用户
- 创建角色>选择快速创建
二、对象存储
2.1、创建桶
1) 基本信息 2) 高级可选配置 3 确认配置 )
2.2、跨域设置
# Expose-Headers
ETag
Content-Length
x-cos-request-id
x-cos-meta-keywords
三、代码示例
package main
import (
"encoding/json"
"fmt"
"github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common"
"github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
"github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile"
v20180813 "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/sts/v20180813"
"go-admin/app/oxs/models"
)
func GetCOS() {
// 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,此处还需注意密钥对的保密
// 密钥可前往https://console.cloud.tencent.com/cam/capi网站进行获取
credential := common.NewCredential(
"输入获取到的 ak",
"输入获取到的 sk",
)
// 实例化一个client选项,可选的,没有特殊需求可以跳过
cpf := profile.NewClientProfile()
cpf.HttpProfile.Endpoint = "sts.tencentcloudapi.com"
// 实例化要请求产品的client对象,clientProfile是可选的
client, _ := v20180813.NewClient(credential, "ap-nanjing", cpf)
// 实例化一个请求对象,每个接口都会对应一个request对象
request := v20180813.NewGetFederationTokenRequest()
// 您可以自定义调用方英文名称,由字母组成。
request.Name = common.StringPtr("quark")
policy := models.PolicyCOS{
Version: "2.0",
Statement: models.Statement{
Effect: "allow",
Action: []string{
"cos:ListParts",
"cos:PutObject",
"cos:GetObject",
"cos:HeadObject",
"cos:OptionsObject",
"cos:GetObjectTagging",
},
Resource: []string{
"*",
},
},
}
// 转换成 JSON 格式
policyJson, _ := json.Marshal(policy)
request.Policy = common.StringPtr(string(policyJson))
request.DurationSeconds = common.Uint64Ptr(1800)
// 返回的resp是一个GetFederationTokenResponse的实例,与请求对象对应
response, err := client.GetFederationToken(request)
if _, ok := err.(*errors.TencentCloudSDKError); ok {
fmt.Printf("An API error has returned: %s", err)
//return
}
if err != nil {
panic(err)
}
// 输出json格式的字符串回包
fmt.Printf("%s", response.ToJsonString())
}
版权声明:
作者:Akiraka
链接:https://www.akiraka.net/code/golang/1352.html
来源:Akiraka
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
海报
使用 GO 获取腾讯云 COS 临时授权与跨域设置
一、腾讯云
1) 这个设置可以根据自己需求来看,也可以用主账号拿到 AK/SK 即可 2) 用子用户是为了安全也防止出现其他问题
1.1、进入访问控制
进入 控制台>……
文章目录
关闭
共有 0 条评论