Golang调用阿里云-SDK-CDN刷新缓存
参考官网文档
https://next.api.aliyun.com/api/Cdn/
直接上源代码
package main
import (
"fmt"
cdn "github.com/alibabacloud-go/cdn-20180510/v2/client"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
util "github.com/alibabacloud-go/tea-utils/v2/service"
"github.com/alibabacloud-go/tea/tea"
)
func CreateClient(accessKeyId *string, accessKeySecret *string) (_result *cdn.Client, _err error) {
config := &openapi.Config{
AccessKeyId: accessKeyId,
AccessKeySecret: accessKeySecret,
}
config.Endpoint = tea.String("cdn.aliyuncs.com")
_result = &cdn.Client{}
_result, _err = cdn.NewClient(config)
return _result, _err
}
func _main() (_err error) {
client, _err := CreateClient(tea.String("XXXXXXX"), tea.String("XXXXXX"))
if _err != nil {
return _err
}
refreshObjectCachesRequest := &cdn.RefreshObjectCachesRequest{
ObjectPath: tea.String("https:XXXXXXXXXX"),
ObjectType: tea.String("Directory"),
}
runtime := &util.RuntimeOptions{}
tryErr := func() (_e error) {
defer func() {
if r := tea.Recover(recover()); r != nil {
_e = r
}
}()
_, _err = client.RefreshObjectCachesWithOptions(refreshObjectCachesRequest, runtime)
if _err != nil {
return _err
}
return nil
}()
if tryErr != nil {
var error = &tea.SDKError{}
if _t, ok := tryErr.(*tea.SDKError); ok {
error = _t
} else {
error.Message = tea.String(tryErr.Error())
}
_, _err = util.AssertAsString(error.Message)
fmt.Println(_err)
if _err != nil {
return _err
}
}
return _err
}
func main() {
err := _main()
if err != nil {
panic(err)
}
}
验证结果查看操作记录
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/10c0ee8138c6abeb4afc3a30829f0afb.png)