Documentation ¶
Index ¶
- Constants
- Variables
- func GetClientError(err error) error
- func GetClientErrorFromString(str string) error
- type APIEndpoints
- type BusinessInfo
- type Client
- func (client *Client) GenerateClientToken() string
- func (client *Client) Init(endpoint, version, accessKeyId, accessKeySecret string)
- func (client *Client) InitClient() *Client
- func (client *Client) Invoke(action string, args interface{}, response interface{}) error
- func (client *Client) InvokeByAnyMethod(method, action, path string, args interface{}, response interface{}) error
- func (client *Client) InvokeByFlattenMethod(action string, args interface{}, response interface{}) error
- func (client *Client) NewInit(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, ...)
- func (client *Client) NewInitForAssumeRole(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, ...)
- func (client *Client) SetAccessKeyId(id string)
- func (client *Client) SetAccessKeySecret(secret string)
- func (client *Client) SetBusinessInfo(businessInfo string)
- func (client *Client) SetDebug(debug bool)
- func (client *Client) SetEndpoint(endpoint string)
- func (client *Client) SetHTTPDoHook(hook HTTPDoHook)
- func (client *Client) SetRegionID(regionID Region)
- func (client *Client) SetSecurityToken(securityToken string)
- func (client *Client) SetServiceCode(serviceCode string)
- func (client *Client) SetUserAgent(userAgent string)
- func (client *Client) SetVersion(version string)
- func (client *Client) WithAccessKeyId(id string) *Client
- func (client *Client) WithAccessKeySecret(secret string) *Client
- func (client *Client) WithBusinessInfo(businessInfo string) *Client
- func (client *Client) WithDebug(debug bool) *Client
- func (client *Client) WithEndpoint(endpoint string) *Client
- func (client *Client) WithHTTPDoHook(hook HTTPDoHook) *Client
- func (client *Client) WithRegionID(regionID Region) *Client
- func (client *Client) WithSecurityToken(securityToken string) *Client
- func (client *Client) WithServiceCode(serviceCode string) *Client
- func (client *Client) WithUserAgent(userAgent string) *Client
- func (client *Client) WithVersion(version string) *Client
- type DescribeEndpointArgs
- type DescribeEndpointResponse
- type DescribeEndpointsArgs
- type DescribeEndpointsResponse
- type Endpoint
- type EndpointItem
- type Endpoints
- type Error
- type ErrorResponse
- type FlattenArray
- type HTTPDoHook
- type InstanceChargeType
- type InternetChargeType
- type LocationClient
- func (client *LocationClient) DescribeEndpoint(args *DescribeEndpointArgs) (*DescribeEndpointResponse, error)
- func (client *LocationClient) DescribeEndpoints(args *DescribeEndpointsArgs) (*DescribeEndpointsResponse, error)
- func (client *LocationClient) DescribeOpenAPIEndpoint(region Region, serviceCode string) string
- type NetType
- type NetworkType
- type Pagination
- type PaginationResult
- type Product
- type Products
- type Region
- type RegionIds
- type Request
- type Response
- type TimeType
- type UnderlineString
Constants ¶
const ( HTTP_PROTOCOL = "http" HTTPS_PROTOCOL = "https" )
const ( Hangzhou = Region("cn-hangzhou") Qingdao = Region("cn-qingdao") Beijing = Region("cn-beijing") Hongkong = Region("cn-hongkong") Shenzhen = Region("cn-shenzhen") Shanghai = Region("cn-shanghai") Zhangjiakou = Region("cn-zhangjiakou") Huhehaote = Region("cn-huhehaote") APSouthEast1 = Region("ap-southeast-1") APNorthEast1 = Region("ap-northeast-1") APSouthEast2 = Region("ap-southeast-2") APSouthEast3 = Region("ap-southeast-3") USWest1 = Region("us-west-1") USEast1 = Region("us-east-1") MEEast1 = Region("me-east-1") EUCentral1 = Region("eu-central-1") ShenZhenFinance = Region("cn-shenzhen-finance-1") ShanghaiFinance = Region("cn-shanghai-finance-1") )
Constants of region definition
const ( SignatureVersion = "1.0" SignatureMethod = "HMAC-SHA1" JSONResponseFormat = "JSON" XMLResponseFormat = "XML" ECSRequestMethod = "GET" )
Constants for Aliyun API requests
const ( PayByBandwidth = InternetChargeType("PayByBandwidth") PayByTraffic = InternetChargeType("PayByTraffic") )
const ( PrePaid = InstanceChargeType("PrePaid") PostPaid = InstanceChargeType("PostPaid") )
const ( Internet = NetType("Internet") Intranet = NetType("Intranet") )
const ( Hour = TimeType("Hour") Day = TimeType("Day") Week = TimeType("Week") Month = TimeType("Month") Year = TimeType("Year") )
const ( Classic = NetworkType("Classic") VPC = NetworkType("VPC") )
const Version = "0.1"
Variables ¶
var (
SpecailEnpoints = map[Region]map[string]string{
APNorthEast1: {
"ecs": "https://ecs.ap-northeast-1.aliyuncs.com",
"slb": "https://slb.ap-northeast-1.aliyuncs.com",
"rds": "https://rds.ap-northeast-1.aliyuncs.com",
"vpc": "https://vpc.ap-northeast-1.aliyuncs.com",
},
APSouthEast2: {
"ecs": "https://ecs.ap-southeast-2.aliyuncs.com",
"slb": "https://slb.ap-southeast-2.aliyuncs.com",
"rds": "https://rds.ap-southeast-2.aliyuncs.com",
"vpc": "https://vpc.ap-southeast-2.aliyuncs.com",
},
APSouthEast3: {
"ecs": "https://ecs.ap-southeast-3.aliyuncs.com",
"slb": "https://slb.ap-southeast-3.aliyuncs.com",
"rds": "https://rds.ap-southeast-3.aliyuncs.com",
"vpc": "https://vpc.ap-southeast-3.aliyuncs.com",
},
MEEast1: {
"ecs": "https://ecs.me-east-1.aliyuncs.com",
"slb": "https://slb.me-east-1.aliyuncs.com",
"rds": "https://rds.me-east-1.aliyuncs.com",
"vpc": "https://vpc.me-east-1.aliyuncs.com",
},
EUCentral1: {
"ecs": "https://ecs.eu-central-1.aliyuncs.com",
"slb": "https://slb.eu-central-1.aliyuncs.com",
"rds": "https://rds.eu-central-1.aliyuncs.com",
"vpc": "https://vpc.eu-central-1.aliyuncs.com",
},
Zhangjiakou: {
"ecs": "https://ecs.cn-zhangjiakou.aliyuncs.com",
"slb": "https://slb.cn-zhangjiakou.aliyuncs.com",
"rds": "https://rds.cn-zhangjiakou.aliyuncs.com",
"vpc": "https://vpc.cn-zhangjiakou.aliyuncs.com",
},
Huhehaote: {
"ecs": "https://ecs.cn-huhehaote.aliyuncs.com",
"slb": "https://slb.cn-huhehaote.aliyuncs.com",
"rds": "https://rds.cn-huhehaote.aliyuncs.com",
"vpc": "https://vpc.cn-huhehaote.aliyuncs.com",
},
}
)
var ValidRegions = []Region{ Hangzhou, Qingdao, Beijing, Shenzhen, Hongkong, Shanghai, Zhangjiakou, Huhehaote, USWest1, USEast1, APNorthEast1, APSouthEast1, APSouthEast2, APSouthEast3, MEEast1, EUCentral1, ShenZhenFinance, ShanghaiFinance, }
Functions ¶
func GetClientError ¶
Types ¶
type APIEndpoints ¶
type APIEndpoints struct {
Endpoint []EndpointItem
}
type BusinessInfo ¶
type Client ¶
type Client struct { AccessKeyId string //Access Key Id AccessKeySecret string //Access Key Secret // contains filtered or unexported fields }
A Client represents a client of ECS services
func (*Client) GenerateClientToken ¶
GenerateClientToken generates the Client Token with random string
func (*Client) InitClient ¶
Intialize client object when all properties are ready
func (*Client) InvokeByAnyMethod ¶
func (client *Client) InvokeByAnyMethod(method, action, path string, args interface{}, response interface{}) error
Invoke sends the raw HTTP request for ECS services 改进了一下上面那个方法,可以使用各种Http方法 2017.1.30 增加了一个path参数,用来拓展访问的地址
func (*Client) InvokeByFlattenMethod ¶
func (client *Client) InvokeByFlattenMethod(action string, args interface{}, response interface{}) error
Invoke sends the raw HTTP request for ECS services
func (*Client) NewInit ¶
func (client *Client) NewInit(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, regionID Region)
Initialize properties of a client instance including regionID
func (*Client) NewInitForAssumeRole ¶
func (*Client) SetAccessKeyId ¶
SetAccessKeyId sets new AccessKeyId
func (*Client) SetAccessKeySecret ¶
SetAccessKeySecret sets new AccessKeySecret
func (*Client) SetBusinessInfo ¶
SetBusinessInfo sets business info to log the request/response message
func (*Client) SetEndpoint ¶
SetEndpoint sets custom endpoint
func (*Client) SetHTTPDoHook ¶
func (client *Client) SetHTTPDoHook(hook HTTPDoHook)
SetHTTPDoHook ...
func (*Client) SetRegionID ¶
SetEndpoint sets Region ID
func (*Client) SetSecurityToken ¶
set SecurityToken
func (*Client) SetServiceCode ¶
SetServiceCode sets serviceCode
func (*Client) SetUserAgent ¶
SetUserAgent sets user agent to the request/response message
func (*Client) SetVersion ¶
SetEndpoint sets custom version
func (*Client) WithAccessKeyId ¶
WithAccessKeyId sets new AccessKeyId
func (*Client) WithAccessKeySecret ¶
WithAccessKeySecret sets new AccessKeySecret
func (*Client) WithBusinessInfo ¶
WithBusinessInfo sets business info to log the request/response message
func (*Client) WithEndpoint ¶
WithEndpoint sets custom endpoint
func (*Client) WithHTTPDoHook ¶
func (client *Client) WithHTTPDoHook(hook HTTPDoHook) *Client
WithHTTPDoHook sets httpDoHook
func (*Client) WithRegionID ¶
WithRegionID sets Region ID
func (*Client) WithSecurityToken ¶
WithSecurityToken sets securityToken
func (*Client) WithServiceCode ¶
WithServiceCode sets serviceCode
func (*Client) WithUserAgent ¶
WithUserAgent sets user agent to the request/response message
func (*Client) WithVersion ¶
WithVersion sets custom version
type DescribeEndpointArgs ¶
type DescribeEndpointResponse ¶
type DescribeEndpointResponse struct { Response EndpointItem }
type DescribeEndpointsArgs ¶
type DescribeEndpointsResponse ¶
type DescribeEndpointsResponse struct { Response Endpoints APIEndpoints RequestId string Success bool }
type EndpointItem ¶
type Error ¶
type Error struct { ErrorResponse StatusCode int //Status Code of HTTP Response }
An Error represents a custom error for Aliyun API failure response
type ErrorResponse ¶
type FlattenArray ¶
type FlattenArray []string
RemovalPolicy.N add index to array item RemovalPolicy=["a", "b"] => RemovalPolicy.1="a" RemovalPolicy.2="b"
type HTTPDoHook ¶
type HTTPDoHook func(fn func(req *http.Request) (*http.Response, error)) func(req *http.Request) (*http.Response, error)
HTTPDoHook defines the type of hook
type InstanceChargeType ¶
type InstanceChargeType string
type InternetChargeType ¶
type InternetChargeType string
type LocationClient ¶
type LocationClient struct {
Client
}
func NewLocationClient ¶
func NewLocationClient(accessKeyId, accessKeySecret, securityToken string) *LocationClient
func NewLocationClientWithSecurityToken ¶
func NewLocationClientWithSecurityToken(accessKeyId, accessKeySecret, securityToken string) *LocationClient
func (*LocationClient) DescribeEndpoint ¶
func (client *LocationClient) DescribeEndpoint(args *DescribeEndpointArgs) (*DescribeEndpointResponse, error)
func (*LocationClient) DescribeEndpoints ¶
func (client *LocationClient) DescribeEndpoints(args *DescribeEndpointsArgs) (*DescribeEndpointsResponse, error)
func (*LocationClient) DescribeOpenAPIEndpoint ¶
func (client *LocationClient) DescribeOpenAPIEndpoint(region Region, serviceCode string) string
type NetworkType ¶
type NetworkType string
type Pagination ¶
func (*Pagination) SetPageSize ¶
func (p *Pagination) SetPageSize(size int)
func (*Pagination) Validate ¶
func (p *Pagination) Validate()
type PaginationResult ¶
A PaginationResponse represents a response with pagination information
func (*PaginationResult) NextPage ¶
func (r *PaginationResult) NextPage() *Pagination
NextPage gets the next page of the result set
type UnderlineString ¶
type UnderlineString string
string contains underline which will be replaced with dot SystemDisk_Category => SystemDisk.Category