1.在项目对应的pom.xml文件加入下列依赖(可能需要大概10分钟)
<dependency>
<groupId>com.huaweicloud.sdk</groupId>
<artifactId>huaweicloud-sdk-core</artifactId>
<version>[3.0.40-rc, 3.2.0)</version>
</dependency>
<dependency>
<groupId>com.huaweicloud.sdk</groupId>
<artifactId>huaweicloud-sdk-iotda</artifactId>
<version>[3.0.40-rc, 3.2.0)</version>
</dependency>
2.别忘了点击右上角刷新依赖:
2.在项目中加入如下代码,并根据代码注释部分修改相应的值:
package com.sun.service;
import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.core.region.Region;
import com.huaweicloud.sdk.iotda.v5.*;
import com.huaweicloud.sdk.iotda.v5.model.*;
public class ShowDeviceShadowSolution {
public static void main(String[] args) {
//替换为自己的ak和sk,在控制台右上角的‘我的凭证’->'访问密钥',没有的话需要新建一个密钥
String ak = "HWCLOUD_AK";
String sk ="HWCLOUD_SK";
// ENDPOINT:请在控制台的"总览"界面的"平台接入地址"中查看“应用侧”的https接入地址。
//替换为自己的https地址
String iotdaEndpoint = "https地址";
ICredential auth = new BasicCredentials()
// 标准版/企业版需要使用衍生算法,基础版请删除配置"withDerivedPredicate";
//我这里是基础款,故删除
// .withDerivedPredicate(AbstractCredentials.DEFAULT_DERIVED_PREDICATE) // Used in derivative ak/sk authentication scenarios
.withAk(ak)
.withSk(sk);
IoTDAClient client = IoTDAClient.newBuilder()
.withCredential(auth)
// 标准版/企业版:需自行创建Region对象,基础版:请使用IoTDARegion的region对象,如"withRegion(IoTDARegion.CN_NORTH_4)"
//我这里是北京—4的,故用cn-north-4
.withRegion(new Region("cn-north-4", iotdaEndpoint))
.build();
ShowDeviceShadowRequest request = new ShowDeviceShadowRequest();
// 替换为自己的设备ID
request.withDeviceId("device_id");
try {
ShowDeviceShadowResponse response = client.showDeviceShadow(request);
//输出结果
System.out.println(response.toString());
} catch (ConnectionException e) {
e.printStackTrace();
} catch (RequestTimeoutException e) {
e.printStackTrace();
} catch (ServiceResponseException e) {
e.printStackTrace();
System.out.println(e.getHttpStatusCode());
System.out.println(e.getRequestId());
System.out.println(e.getErrorCode());
System.out.println(e.getErrorMsg());
}
}
}