HTTPS配置
更新時間:
本節主要介紹V2.0 Go SDK對于HTTPS請求方式的配置。
在使用V2.0 Go SDK進行開發時,您可以在Config中配置請求協議,當Client在調用OpenAPI時,使用指定的請求協議進行通信。建議使用HTTPS,這樣可以提升數據傳輸的安全性。若不設置,則使用OpenAPI默認支持的請求協議類型(HTTPS):
config := &openapi.Config{
// 設定協議HTTPS/HTTP
Protocol: tea.String("HTTPS"),
}
重要
使用HTTPS協議訪問OpenAPI時,SDK會默認開啟校驗SSL/TLS證書有效性,若您代碼環境沒有證書環境,則會報錯證書校驗失敗。
為保障通信安全,建議您保持開啟,若在測試環境必須忽略證書校驗,可以通過運行時參數IgnoreSSL
設置:
// 創建RuntimeObject實例并設置運行參數。
runtime := &util.RuntimeOptions{}
// 忽略 SSL 相關報錯
runtime.IgnoreSSL = tea.Bool(true)
下面是完整示例:
package main
import (
"encoding/json"
"fmt"
"github.com/aliyun/credentials-go/credentials"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
ecs20140526 "github.com/alibabacloud-go/ecs-20140526/v4/client"
util "github.com/alibabacloud-go/tea-utils/v2/service"
"github.com/alibabacloud-go/tea/tea"
)
func main() {
// 初始化Credential
credential, err := credentials.NewCredential(nil)
if err != nil {
panic(err)
}
config := &openapi.Config{
// 使用Credential配置憑證
Credential: credential,
// 設定協議 HTTPS/HTTP
Protocol: tea.String("HTTPS"),
RegionId: tea.String("<RegionId>"),
}
client, err := ecs20140526.NewClient(config)
if err != nil {
panic(err)
}
describeRegionsRequest := &ecs20140526.DescribeRegionsRequest{}
// 創建RuntimeObject實例并設置運行參數。
runtime := &util.RuntimeOptions{}
// 忽略 SSL 相關報錯
runtime.IgnoreSSL = tea.Bool(true)
resp, err := client.DescribeRegionsWithOptions(describeRegionsRequest, runtime)
if err != nil {
panic(err)
}
// response 包含服務端響應的 body 和 headers
body, err := json.Marshal(resp.Body)
if err != nil {
panic(err)
}
fmt.Printf("body: %s\n", string(body))
}
文檔內容是否對您有幫助?