すべてのプロダクト
Search
ドキュメントセンター

IoT Platform:Go 用 IoT Platform SDK の使用

最終更新日:Mar 22, 2025

IoT Platform は、Go 用の SDK を提供しています。このトピックでは、Go 用の IoT Platform SDK をインストールおよび構成する方法について説明します。また、SDK を使用して IoT Platform の API 操作を呼び出す方法のサンプルコードも提供します。

SDK のインストール

  1. Go をインストールします。

    Go 1.6 以降がサポートされています。Go のインストールパッケージを入手するには、Go の公式 Web サイトにアクセスしてください。

  2. Go をインストールした後、GOPATH という名前のシステム変数を作成し、値をコードディレクトリに設定します。

    GOPATH 変数の詳細については、go help gopath コマンドを実行してください。

  3. 次のコマンドを実行して、Go 用の Alibaba Cloud SDK をインストールします。

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

    詳細については、alibaba-cloud-sdk-go をご覧ください。

  4. 次のコマンドを実行して、Go 用の IoT Platform 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 {
        // 例外を処理します
        panic(err)
    }
}

パラメーター

説明

regionId

IoT Platform のリージョン ID。たとえば、中国 (上海) リージョンの ID は cn-shanghai です。詳細については、「サポートされているリージョン」をご参照ください。

リクエストの開始

IoT Platform の API 操作の詳細については、「関数別の操作リスト」をご参照ください。各 API 操作の request パラメーターと response パラメーターの詳細については、API ドキュメントをご参照ください。

次の例は、Pub 操作を呼び出して、トピックにメッセージをパブリッシュする方法を示しています。リクエストパラメーターの詳細については、「Pub」をご参照ください。

重要

次のサンプルコードでは、${iotInstanceId} はインスタンスの ID を指定します。インスタンスの [ID] は、IoT Platform コンソールの [概要] ページで確認できます。

  • インスタンスに ID がある場合は、このパラメーターに ID を指定する必要があります。指定しないと、リクエストは失敗します。

  • インスタンスに [概要] ページまたは ID が生成されていない場合は、このパラメーターを指定する必要はありません。IotInstanceId パラメーターに関連するリクエストコードを削除するか、パラメーターに空の文字列 ("") を指定する必要があります。指定しないと、リクエストは失敗します。

IoT Platform インスタンスの詳細については、「概要」をご参照ください。インスタンスの購入方法の詳細については、「Enterprise Edition インスタンスを購入する」をご参照ください。よくある質問については、「IoT Platform インスタンスに関する FAQ」をご参照ください。

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)

付録: サンプルコード

API 操作のサンプルコードは、IoT Platform SDK Sample Center で表示またはダウンロードできます。Java、Python、PHP、.NET、および Go 用の SDK のサンプルコードが提供されています。

Alibaba Cloud OpenAPI Explorer は、API 操作のオンラインデバッグツールを提供しています。[API デバッグ] ページで、API 操作の検索、API 操作の呼び出し、およびさまざまな SDK の API 操作のサンプルコードの生成を行うことができます。ページの右側にある [サンプルコード] タブで、SDK のサンプルコードを表示できます。[デバッグ結果] タブで、実際の リクエスト URL と JSON 形式の応答を表示できます。