diff --git a/Teafile b/Teafile index cda98fa..3d5b095 100644 --- a/Teafile +++ b/Teafile @@ -1,7 +1,7 @@ { "scope": "alibabacloud", - "name": "OpenApi", - "version": "0.3.15", + "name": "OpenApiWithHttpClient", + "version": "0.0.3", "main": "./main.tea", "maintainers": [ { @@ -14,11 +14,12 @@ "OpenApiUtil": "alibabacloud:OpenApiUtil:*", "Credential": "alibabacloud:Credential:*", "SPI": "alibabacloud:GatewaySPI:*", - "XML": "darabonba:XML:*" + "XML": "darabonba:XML:*", + "HttpClient": "darabonba:HttpClient:*" }, "releases": { "ts": "@alicloud/openapi-client:^0.4.12", - "go": "github.com/alibabacloud-go/darabonba-openapi/v2/client:v2.0.10", + "go": "github.com/alibabacloud-go/darabonba-openapi/v2/client:v2.0.11-0.20241012070109-f821fe24f6e4", "csharp": "AlibabaCloud.OpenApiClient:0.1.12", "java": "com.aliyun:tea-openapi:0.3.6", "php": "alibabacloud/darabonba-openapi:^0.2.13", @@ -100,7 +101,11 @@ }, "releaselog": { "changelog": [ +<<<<<<< HEAD "Solve the inconsistency of credentials refresh in all methods." +======= + "[golang]support httpclient in config." +>>>>>>> ce38047 (update teafile) ], "compatible": true } diff --git a/golang/client/client.go b/golang/client/client.go index 79d9ea2..b6ef2fd 100644 --- a/golang/client/client.go +++ b/golang/client/client.go @@ -207,7 +207,8 @@ type Config struct { // example: // // false - DisableHttp2 *bool `json:"disableHttp2,omitempty" xml:"disableHttp2,omitempty"` + DisableHttp2 *bool `json:"disableHttp2,omitempty" xml:"disableHttp2,omitempty"` + HttpClient tea.HttpClient `json:"httpClient,omitempty" xml:"httpClient,omitempty"` } func (s Config) String() string { @@ -368,6 +369,11 @@ func (s *Config) SetDisableHttp2(v bool) *Config { return s } +func (s *Config) SetHttpClient(v tea.HttpClient) *Config { + s.HttpClient = v + return s +} + type OpenApiRequest struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` Query map[string]*string `json:"query,omitempty" xml:"query,omitempty"` @@ -511,6 +517,7 @@ type Client struct { Cert *string Ca *string DisableHttp2 *bool + HttpClient tea.HttpClient } // Description: @@ -588,6 +595,7 @@ func (client *Client) Init(config *Config) (_err error) { client.Cert = config.Cert client.Ca = config.Ca client.DisableHttp2 = config.DisableHttp2 + client.HttpClient = config.HttpClient return nil } @@ -642,7 +650,8 @@ func (client *Client) DoRPCRequest(action *string, version *string, protocol *st "policy": tea.StringValue(util.DefaultString(runtime.BackoffPolicy, tea.String("no"))), "period": tea.IntValue(util.DefaultNumber(runtime.BackoffPeriod, tea.Int(1))), }, - "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "httpClient": client.HttpClient, } _resp := make(map[string]interface{}) @@ -941,7 +950,8 @@ func (client *Client) DoROARequest(action *string, version *string, protocol *st "policy": tea.StringValue(util.DefaultString(runtime.BackoffPolicy, tea.String("no"))), "period": tea.IntValue(util.DefaultNumber(runtime.BackoffPeriod, tea.Int(1))), }, - "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "httpClient": client.HttpClient, } _resp := make(map[string]interface{}) @@ -1217,7 +1227,8 @@ func (client *Client) DoROARequestWithForm(action *string, version *string, prot "policy": tea.StringValue(util.DefaultString(runtime.BackoffPolicy, tea.String("no"))), "period": tea.IntValue(util.DefaultNumber(runtime.BackoffPeriod, tea.Int(1))), }, - "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "httpClient": client.HttpClient, } _resp := make(map[string]interface{}) @@ -1498,7 +1509,8 @@ func (client *Client) DoRequest(params *Params, request *OpenApiRequest, runtime "policy": tea.StringValue(util.DefaultString(runtime.BackoffPolicy, tea.String("no"))), "period": tea.IntValue(util.DefaultNumber(runtime.BackoffPeriod, tea.Int(1))), }, - "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), + "httpClient": client.HttpClient, } _resp := make(map[string]interface{}) @@ -1840,6 +1852,7 @@ func (client *Client) Execute(params *Params, request *OpenApiRequest, runtime * }, "ignoreSSL": tea.BoolValue(runtime.IgnoreSSL), "disableHttp2": DefaultAny(client.DisableHttp2, tea.Bool(false)), + "httpClient": client.HttpClient, } _resp := make(map[string]interface{}) diff --git a/golang/go.mod b/golang/go.mod index f7a3ab6..81c4507 100644 --- a/golang/go.mod +++ b/golang/go.mod @@ -6,7 +6,7 @@ require ( github.com/alibabacloud-go/alibabacloud-gateway-pop v0.0.6 github.com/alibabacloud-go/alibabacloud-gateway-spi v0.0.5 github.com/alibabacloud-go/openapi-util v0.1.0 - github.com/alibabacloud-go/tea v1.2.2 + github.com/alibabacloud-go/tea v1.2.3-0.20240605082020-e6e537a31150 github.com/alibabacloud-go/tea-utils/v2 v2.0.6 github.com/alibabacloud-go/tea-xml v1.1.3 github.com/aliyun/credentials-go v1.3.10 diff --git a/main.tea b/main.tea index b6243c4..ac44057 100644 --- a/main.tea +++ b/main.tea @@ -7,6 +7,7 @@ import Credential; import OpenApiUtil; import SPI; import XML; +import HttpClient; type @endpoint = string type @regionId = string @@ -38,6 +39,7 @@ type @key = string type @cert = string type @ca = string type @disableHttp2 = boolean +type @httpClient = HttpClient model GlobalParameters { headers?: map[string]string, @@ -77,6 +79,7 @@ model Config { cert?: string(description='client certificate', example='-----BEGIN CERTIFICATE-----\nxxx-----END CERTIFICATE-----',default=''), ca?: string(description='server certificate', example='-----BEGIN CERTIFICATE-----\nxxx-----END CERTIFICATE-----',default=''), disableHttp2?: boolean(description='disable HTTP/2', example='false'), + httpClient?: HttpClient } /** @@ -136,6 +139,7 @@ init(config: Config) { @cert = config.cert; @ca = config.ca; @disableHttp2 = config.disableHttp2; + @httpClient = config.httpClient; } model OpenApiRequest { @@ -337,7 +341,8 @@ api doRPCRequest(action: string, version: string, protocol: string, method: stri policy = Util.defaultString(runtime.backoffPolicy, 'no'), period = Util.defaultNumber(runtime.backoffPeriod, 1) }, - ignoreSSL = runtime.ignoreSSL + ignoreSSL = runtime.ignoreSSL, + httpClient = @httpClient } /** @@ -520,7 +525,8 @@ api doROARequest(action: string, version: string, protocol: string, method: stri policy = Util.defaultString(runtime.backoffPolicy, 'no'), period = Util.defaultNumber(runtime.backoffPeriod, 1) }, - ignoreSSL = runtime.ignoreSSL + ignoreSSL = runtime.ignoreSSL, + httpClient = @httpClient } /** @@ -703,7 +709,8 @@ api doROARequestWithForm(action: string, version: string, protocol: string, meth policy = Util.defaultString(runtime.backoffPolicy, 'no'), period = Util.defaultNumber(runtime.backoffPeriod, 1) }, - ignoreSSL = runtime.ignoreSSL + ignoreSSL = runtime.ignoreSSL, + httpClient = @httpClient } model Params = { @@ -948,7 +955,8 @@ api doRequest(params: Params, request: OpenApiRequest, runtime: Util.RuntimeOpti policy = Util.defaultString(runtime.backoffPolicy, 'no'), period = Util.defaultNumber(runtime.backoffPeriod, 1) }, - ignoreSSL = runtime.ignoreSSL + ignoreSSL = runtime.ignoreSSL, + httpClient = @httpClient } @@ -1086,7 +1094,8 @@ api execute(params: Params, request: OpenApiRequest, runtime: Util.RuntimeOption period = Util.defaultNumber(runtime.backoffPeriod, 1) }, ignoreSSL = runtime.ignoreSSL, - disableHttp2 = defaultAny(@disableHttp2, false) + disableHttp2 = defaultAny(@disableHttp2, false), + httpClient = @httpClient } /**