36 lines
890 B
Go
36 lines
890 B
Go
package cos
|
||
|
||
import (
|
||
"context"
|
||
"encoding/xml"
|
||
"net/http"
|
||
)
|
||
|
||
// Service 相关 API
|
||
type ServiceService service
|
||
|
||
// ServiceGetResult is the result of Get Service
|
||
type ServiceGetResult struct {
|
||
XMLName xml.Name `xml:"ListAllMyBucketsResult"`
|
||
Owner *Owner `xml:"Owner"`
|
||
Buckets []Bucket `xml:"Buckets>Bucket,omitempty"`
|
||
}
|
||
|
||
// Get Service 接口实现获取该用户下所有Bucket列表。
|
||
//
|
||
// 该API接口需要使用Authorization签名认证,
|
||
// 且只能获取签名中AccessID所属账户的Bucket列表。
|
||
//
|
||
// https://www.qcloud.com/document/product/436/8291
|
||
func (s *ServiceService) Get(ctx context.Context) (*ServiceGetResult, *Response, error) {
|
||
var res ServiceGetResult
|
||
sendOpt := sendOptions{
|
||
baseURL: s.client.BaseURL.ServiceURL,
|
||
uri: "/",
|
||
method: http.MethodGet,
|
||
result: &res,
|
||
}
|
||
resp, err := s.client.send(ctx, &sendOpt)
|
||
return &res, resp, err
|
||
}
|