Golang SDK 使用方法
使用步驟
為快速開始使用 AIRec Go SDK,請按照如下步驟進行。
步驟1 建立阿里雲帳號
具體方法請參考阿里雲帳號註冊流程 。為了更好地使用阿里雲服務,建議儘快完成實名認證,否則部分阿里雲服務將無法使用。
步驟2 擷取阿里雲存取金鑰
為了使用 AIRec Golang SDK,您必須申請阿里雲的 存取金鑰。登入阿里雲 密鑰管理頁面 。選擇一對用於 SDK 的存取金鑰對。如果沒有,請建立一對新存取金鑰,且保證它處於啟用狀態。有關如何建立存取金鑰,參見 建立AccessKey。
步驟3 安裝 Golang 開發環境
AIRec Golang SDK 推薦使用 Golang 1.5+以上版本,您可以從 Golang官方網站 下載安裝。
步驟4 安裝Golang Airec開發包
擷取最新版AIRec Golang SDK
go get github.com/aliyun/alibaba-cloud-sdk-go其中AIRec相關的協議代碼放在:services/airec
步驟5 開始使用SDK
已建立執行個體為例,介紹SDK完整使用流程,代碼如下:
推送資料
注意:推送的資料JSON格式詳見:推送資料
package main
import (
"os"
"fmt"
"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
)
func main() {
// 阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
//強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
//本樣本以將AccessKey儲存在環境變數中來實現身分識別驗證為例。
client, err := sdk.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
if err != nil {
panic(err)
}
request := requests.NewCommonRequest()
request.Method = "POST"
request.Scheme = "https" // https | http
request.Domain = "airec.cn-hangzhou.aliyuncs.com"
request.Version = "2018-10-12"
request.PathPattern = "/openapi/instances/airec執行個體id/tables/需要推送資料的表名/actions/bulk"
request.Headers["Content-Type"] = "application/json"
//body中填入符合規範的json資料
body := ``
request.Content = []byte(body)
response, err := client.ProcessCommonRequest(request)
if err != nil {
panic(err)
}
fmt.Print(response.GetHttpContentString())
}擷取推薦結果
注意:擷取推薦結果返回的參數說明,及常見報錯詳見:擷取推薦結果
package main
import (
"os"
"fmt"
"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
)
func main() {
// 阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
//強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
//本樣本以將AccessKey儲存在環境變數中來實現身分識別驗證為例。
client, err := sdk.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
if err != nil {
panic(err)
}
request := requests.NewCommonRequest()
request.Method = "GET"
request.Scheme = "https" // https | http
request.Domain = "airec.cn-hangzhou.aliyuncs.com"
request.Version = "2018-10-12"
request.PathPattern = "/openapi/instances/airec-xxx/actions/recommend"
request.Headers["Content-Type"] = "application/json"
//設定單次請求的返回結果數
request.QueryParams["ReturnCount"] = "10"
//佈建要求的user_id
request.QueryParams["UserId"] = "1234"
//佈建要求推薦結果的情境id
request.QueryParams["SceneId"] = "test01"
response, err := client.ProcessCommonRequest(request)
if err != nil {
panic(err)
}
fmt.Print(response.GetHttpContentString())
}