A IoT Platform oferece um SDK para Go. Este tópico descreve como instale e configure o SDK da IoT Platform para Go e fornece exemplos de código para chamar operações de API da IoT Platform com o SDK.
Instale o SDK
-
Instale o Go.
O Go 1.6 e versões posteriores são compatíveis. Para obter o pacote de instalação do Go, acesse o site oficial do Go.
-
Após instalar o Go, crie uma variável de sistema chamada GOPATH e defina o valor como o diretório do seu código.
Para obter mais informações sobre a variável GOPATH, execute o comando
go help gopath. -
Execute o seguinte comando para instale o SDK da Alibaba Cloud para Go:
go get -u github.com/aliyun/alibaba-cloud-sdk-go/sdkPara mais detalhes, acesse alibaba-cloud-sdk-go.
-
Execute o seguinte comando para importar os arquivos relacionados ao SDK da IoT Platform para Go em um arquivo Go:
import "github.com/aliyun/alibaba-cloud-sdk-go/services/iot"
Inicializar o 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)
}
}
|
Parâmetro |
Descrição |
|
regionId |
O ID da região da IoT Platform. Por exemplo, o ID da região China (Shanghai) é |
Iniciar uma solicitação
Para consultar a lista de APIs de cloud da IoT Platform, visualize API list. As descrições dos parâmetros de solicitação em request e dos parâmetros de resposta em response estão disponíveis na referência da API correspondente.
Este tópico usa a operação Pub como exemplo para demonstrar a publicação de uma mensagem em um tópico. Consulte Pub para obter detalhes sobre os parâmetros da solicitação.
No código a seguir, ${iotInstanceId} representa o ID da instância. Encontre o ID da instância atual na página Instance Overview no console da IoT Platform.
Se houver um ID, informe-o obrigatoriamente. Caso contrário, a chamada de API falhará.
Se a página Instance Details ou o ID não estiverem disponíveis, não será necessário passar um ID. Remova o código de solicitação referente a
IotInstanceIdou passe um valor vazio"". A chamada de API falhará se essa orientação não for seguida.
Consulte Instance overview para saber mais sobre instâncias. Visualize Purchase an Enterprise instance para obter instruções de compra de instâncias. Perguntas frequentes estão disponíveis em FAQ about IoT Platform instances.
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)
Apêndice: Código de exemplo
Acesse o Centro de Exemplos do SDK Cloud da IoT Platform para visualizar ou baixe códigos de exemplo para chamadas de API. Os exemplos abrangem os SDKs para Java, Python, PHP, .NET e Go.
O Portal do Desenvolvedor OpenAPI da Alibaba Cloud disponibiliza uma online API debugging tool. Na página API debugging, pesquise e teste chamadas de API. O portal gera automaticamente códigos de exemplo do SDK em diversas linguagens com base nos parâmetros inseridos. Visualize o código gerado na aba SDK Example e a resposta na aba Call Result.