全部產品
Search
文件中心

IoT Platform:Go SDK使用說明

更新時間:Jun 30, 2024

物聯網平台提供Go語言的雲端SDK供開發人員使用。本文介紹雲端Go SDK的安裝和配置,及使用Go SDK調用雲端API的樣本。

安裝SDK

  1. 安裝Go開發環境。

    目前支援Go 1.6及以上版本。請訪問Go官網擷取。

  2. Go安裝完畢後,建立系統變數GOPATH,並將其指向您的代碼目錄。

    瞭解更多GOPATH相關資訊,請執行命令go help gopath

  3. 執行以下命令安裝阿里雲Go SDK。

    go get -u github.com/aliyun/alibaba-cloud-sdk-go/sdk

    瞭解Go SDK詳細資料,請訪問alibaba-cloud-sdk-go

  4. 執行以下命令將IoT Go SDK相關檔案引入Go檔案。

    import "github.com/aliyun/alibaba-cloud-sdk-go/services/iot"

初始化SDK

package main
import (
    "github.com/aliyun/alibaba-cloud-sdk-go/sdk"
    "os"
)
func main() {
    accessKeyId := os.Getenv("ACCESS_KEY_ID")
    accessKeySecret := os.Getenv("ACCESS_KEY_SECRET")
    client, err := sdk.NewClientWithAccessKey("<your regionId>", accessKeyId, accessKeySecret)
    if err != nil {
        // Handle exceptions
        panic(err)
    }
}

參數

說明

regionId

阿里雲服務地區代碼,例如華東2為cn-shanghai。請參見支援的地區

發起調用

物聯網平台雲端API,請參見API列表。有關request中請求參數說明,及response中返回參數說明,請參見對應API文檔。

本文以調用Pub介面發布訊息到Topic為例。請求參數資訊,請參見Pub

重要

以下代碼中${iotInstanceId}為執行個體ID值。您可在物聯網平台控制台的執行個體概覽頁面,查看當前執行個體的ID值。

  • 若有ID值,必須傳入該ID值,否則調用API會失敗。

  • 若無執行個體概覽頁面或ID值,則無需傳入。您需刪除IotInstanceId相關的請求代碼,或傳入空值"",否則調用API會失敗。

執行個體的詳細內容,請參見執行個體概述。購買執行個體方法,請參見購買企業版執行個體。常見問題,請參見物聯網平台執行個體相關問題

request := iot.CreatePubRequest()
request.AcceptFormat = "json"
request.IotInstanceId = "<your iotInstanceId>"
request.ProductKey = "<your productKey>"
request.TopicFullName = fmt.Sprintf("/%s/%s/user/get", "<your productKey>", "<your deviceName>")
request.MessageContent = base64.StdEncoding.EncodeToString([]byte("hello world"))
request.Qos = "0"
response, err := client.Pub(request)
if err != nil {
    fmt.Print(err.Error())
}
fmt.Printf("response is %#v\n", response)

附錄:範例程式碼

前往物聯網平台雲端SDK樣本中心查看或下載API調用的範例程式碼。範例程式碼中包含Java、Python、PHP、.NET和Go版本SDK樣本。

阿里雲OpenAPI開發人員門戶提供API線上調試工具。在API調試頁面,您可以快速檢索和體驗調用API。系統會根據您輸入的參數同步產生各語言SDK的程式碼範例。各語言SDK程式碼範例顯示在頁面右側SDK樣本頁簽下供您參考。在調用結果頁簽下,可查看API調用的真實請求URL和JSON格式的返回結果。