Documentation ¶
Index ¶
- Constants
- Variables
- func GetClientError(err error) error
- func GetClientErrorFromString(str string) error
- func GetCustomError(code, message string) error
- func IsValidRegion(r string) bool
- func TransToString(object interface{}) string
- type APIEndpoints
- type BusinessInfo
- type Client
- func (client *Client) CloseLogger()
- func (client *Client) GenerateClientToken() string
- func (client *Client) GetEndpoint() string
- func (client *Client) GetLogger() *Logger
- func (client *Client) GetLoggerMsg() string
- func (client *Client) GetTemplate() string
- func (client *Client) Init(endpoint, version, accessKeyId, accessKeySecret string)
- func (client *Client) InitClient() *Client
- func (client *Client) InitClient4RegionalDomain() *Client
- func (client *Client) Invoke(action string, args interface{}, response interface{}) (err error)
- func (client *Client) InvokeByAnyMethod(method, action, path string, args interface{}, response interface{}) (err error)
- func (client *Client) InvokeByFlattenMethod(action string, args interface{}, response interface{}) (err error)
- func (client *Client) NewInit(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, ...)
- func (client *Client) NewInit4RegionalDomain(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, ...)
- func (client *Client) NewInitForAssumeRole(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, ...)
- func (client *Client) OpenLogger()
- 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) SetDisableTrace(disableTrace bool)
- func (client *Client) SetEndpoint(endpoint string)
- func (client *Client) SetLogger(level string, channel string, out io.Writer, template string)
- func (client *Client) SetRegionID(regionID Region)
- func (client *Client) SetSecurityToken(securityToken string)
- func (client *Client) SetServiceCode(serviceCode string)
- func (client *Client) SetSpan(span opentracing.Span)
- func (client *Client) SetTemplate(template string)
- func (client *Client) SetTransport(transport http.RoundTripper)
- 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) WithDisableTrace(disableTrace bool) *Client
- func (client *Client) WithEndpoint(endpoint string) *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) WithSpan(span opentracing.Span) *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 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 Logger
- 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") Chengdu = Region("cn-chengdu") APSouthEast1 = Region("ap-southeast-1") APNorthEast1 = Region("ap-northeast-1") APSouthEast2 = Region("ap-southeast-2") APSouthEast3 = Region("ap-southeast-3") APSouthEast5 = Region("ap-southeast-5") APSouth1 = Region("ap-south-1") USWest1 = Region("us-west-1") USEast1 = Region("us-east-1") MEEast1 = Region("me-east-1") EUCentral1 = Region("eu-central-1") EUWest1 = Region("eu-west-1") ShenZhenFinance = Region("cn-shenzhen-finance-1") ShanghaiFinance = Region("cn-shanghai-finance-1") HangZhouFinance = Region("cn-hangzhou-finance-1") CNNorth2Gov1 = Region("cn-north-2-gov-1") RUSWest1 = Region("rus-west-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 CentralDomainServices = map[string]string{
"pvtz": "pvtz.vpc-proxy.aliyuncs.com",
}
var RegionalDomainServices = []string{
"ecs",
"vpc",
"slb",
}
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",
},
EUWest1: {
"ecs": "https://ecs.eu-west-1.aliyuncs.com",
"slb": "https://slb.eu-west-1.aliyuncs.com",
"rds": "https://rds.eu-west-1.aliyuncs.com",
"vpc": "https://vpc.eu-west-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 SpecialDeployedProducts = map[string]map[Region]interface{}{ "vpc": { Hangzhou: Hangzhou, Shenzhen: Shenzhen, APSouthEast1: APSouthEast1, USWest1: USWest1, USEast1: USEast1, Chengdu: Chengdu, Zhangjiakou: Zhangjiakou, Huhehaote: Huhehaote, APSouthEast3: APSouthEast3, EUCentral1: EUCentral1, EUWest1: EUWest1, APSouth1: APSouth1, APNorthEast1: APNorthEast1, APSouthEast5: APSouthEast5, APSouthEast2: APSouthEast2, MEEast1: MEEast1, CNNorth2Gov1: CNNorth2Gov1, }, }
var UnitRegions = map[Region]interface{}{ Hangzhou: Hangzhou, Shenzhen: Shenzhen, APSouthEast1: APSouthEast1, USWest1: USWest1, USEast1: USEast1, Chengdu: Chengdu, Zhangjiakou: Zhangjiakou, Huhehaote: Huhehaote, APSouthEast3: APSouthEast3, EUCentral1: EUCentral1, EUWest1: EUWest1, APSouth1: APSouth1, APNorthEast1: APNorthEast1, APSouthEast5: APSouthEast5, APSouthEast2: APSouthEast2, CNNorth2Gov1: CNNorth2Gov1, HangZhouFinance: Hangzhou, }
Unit-Domain of central product
var ValidRegions = []Region{ Hangzhou, Qingdao, Beijing, Shenzhen, Hongkong, Shanghai, Zhangjiakou, Huhehaote, USWest1, USEast1, APNorthEast1, APSouthEast1, APSouthEast2, APSouthEast3, APSouthEast5, APSouth1, MEEast1, EUCentral1, EUWest1, ShenZhenFinance, ShanghaiFinance, HangZhouFinance, CNNorth2Gov1, }
Functions ¶
func GetClientError ¶
func GetCustomError ¶
func IsValidRegion ¶
IsValidRegion checks if r is an Ali supported region.
func TransToString ¶
func TransToString(object interface{}) string
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) CloseLogger ¶
func (client *Client) CloseLogger()
func (*Client) GenerateClientToken ¶
GenerateClientToken generates the Client Token with random string
func (*Client) GetEndpoint ¶
func (*Client) GetLoggerMsg ¶
func (*Client) GetTemplate ¶
func (*Client) InitClient ¶
Intialize client object when all properties are ready
func (*Client) InitClient4RegionalDomain ¶
Intialize client object when all properties are ready only for regional domain hz
func (*Client) InvokeByAnyMethod ¶
func (client *Client) InvokeByAnyMethod(method, action, path string, args interface{}, response interface{}) (err 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{}) (err 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) NewInit4RegionalDomain ¶
func (client *Client) NewInit4RegionalDomain(endpoint, version, accessKeyId, accessKeySecret, serviceCode string, regionID Region)
Initialize properties of a client instance including regionID only for hz regional Domain
func (*Client) NewInitForAssumeRole ¶
func (*Client) OpenLogger ¶
func (client *Client) OpenLogger()
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) SetDisableTrace ¶
SetDisableTrace close trace mode
func (*Client) SetEndpoint ¶
SetEndpoint sets custom endpoint
func (*Client) SetRegionID ¶
SetEndpoint sets Region ID
func (*Client) SetSecurityToken ¶
set SecurityToken
func (*Client) SetServiceCode ¶
SetServiceCode sets serviceCode
func (*Client) SetSpan ¶
func (client *Client) SetSpan(span opentracing.Span)
SetSpan set the parent span
func (*Client) SetTemplate ¶
func (*Client) SetTransport ¶
func (client *Client) SetTransport(transport http.RoundTripper)
SetTransport sets transport to the http client
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) WithDisableTrace ¶
WithUserAgent sets user agent to the request/response message
func (*Client) WithEndpoint ¶
WithEndpoint sets custom endpoint
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 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