Java SDK使用手冊(cè)
更新時(shí)間:
本文介紹了Java SDK的安裝方法、示例代碼以及如何使用Java SDK發(fā)布事件。
SDK簡(jiǎn)介
事件總線EventBridge的SDK分為管控API SDK和數(shù)據(jù)API SDK,示例代碼和使用的依賴有所不同。
管控API SDK:對(duì)控制臺(tái)頁面進(jìn)行操作使用的SDK。
數(shù)據(jù)API SDK:事件數(shù)據(jù)的通道,目前只有發(fā)送事件(PutEvents)屬于此類。
前提條件
您已完成以下操作:
環(huán)境準(zhǔn)備
管控API SDK
安裝依賴庫(kù)
在pom.xml中添加以下依賴。
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>eventbridge20200401</artifactId>
<version>2.0.0</version>
</dependency>
SDK示例
您可以在OpenAPI門戶通過調(diào)用API接口,自動(dòng)生成對(duì)應(yīng)的SDK示例。具體操作,請(qǐng)參見如何自動(dòng)生成SDK示例。
數(shù)據(jù)API SDK
安裝依賴庫(kù)
在pom.xml中添加以下依賴。
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>eventbridge-client</artifactId>
<version>1.2.6</version>
</dependency>
SDK示例
數(shù)據(jù)API SDK目前只包含發(fā)布事件(PutEvents),如需使用Java SDK發(fā)布一個(gè)或多個(gè)事件,請(qǐng)參考以下示例代碼。
import com.aliyun.eventbridge.EventBridge;
import com.aliyun.eventbridge.EventBridgeClient;
import com.aliyun.eventbridge.models.CloudEvent;
import com.aliyun.eventbridge.models.Config;
import com.aliyun.eventbridge.models.PutEventsResponse;
import com.aliyun.eventbridge.util.EventBuilder;
import com.google.gson.Gson;
import java.net.URI;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class PutEventsSample {
private EventBridge eventBridgeClient;
public PutEventsSample() {
Config authConfig = new Config();
authConfig.accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");// AccessKey ID,阿里云身份驗(yàn)證,在RAM控制臺(tái)創(chuàng)建。獲取方式,請(qǐng)參見創(chuàng)建AccessKey。
authConfig.accessKeySecret =System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");// AccessKey Secret,阿里云身份驗(yàn)證,在RAM控制臺(tái)創(chuàng)建。獲取方式,請(qǐng)參見創(chuàng)建AccessKey。
authConfig.endpoint = "{endpoint}";// 接入點(diǎn)信息。具體信息,請(qǐng)參見地域和接入點(diǎn)。
eventBridgeClient = new EventBridgeClient(authConfig);
}
public void putEventsSample() {
List<CloudEvent> cloudEventList = new ArrayList<>();
cloudEventList.add(EventBuilder.builder()
.withId("a5074581-7e74-4e4c-868f-47e7afdf****")
.withSource(URI.create("acs.oss"))
.withType("oss:ObjectCreated:PostObject")
.withSubject("acs:oss:cn-hangzhou:{yourAccountId}:xls-papk/game_apk/123.jpg")
.withTime(new Date())
.withJsonStringData("{ \"E-Mail\": \"${email}\" }")
.withAliyunEventBus("demo-bus")
.build());
PutEventsResponse putEventsResponse = eventBridgeClient.putEvents(cloudEventList);
System.out.println(new Gson().toJson(putEventsResponse));
}
public static void main(String[] args){
PutEventsSample sample = new PutEventsSample();
try {
sample.putEventsSample();
} catch (Throwable e) {
e.printStackTrace();
}
}
}
文檔內(nèi)容是否對(duì)您有幫助?