非同步要求(.NET)
最後更新: 2024年7月20日
建立對象:
- undefined
說明
伺服器端整合的好處之一,就是可以利用伺服器端可用的大量頻寬和運算資源,透過使用平行功能。 Target .NET SDK支援非同步要求,可輕鬆將Target整合至應用程式現有的非同步工作流程。
支援的方法
.NET
Task<TargetDeliveryResponse> GetOffersAsync(TargetDeliveryRequest request);
Task<TargetDeliveryResponse> SendNotificationsAsync(TargetDeliveryRequest request);
Task<TargetAttributes> GetAttributesAsync(TargetDeliveryRequest request, params string[] mboxes);
範例
非同步SDK API使用方式的範例可能如下所示:
.NET
var deliveryRequest = new TargetDeliveryRequest.Builder()
.SetExecute(new ExecuteRequest(mboxes: new List<MboxRequest> { new MboxRequest(index: 1, name: "a1-serverside-ab") }))
.Build();
var response = await this.targetClient.GetOffersAsync(deliveryRequest);
var notificationRequest = new TargetDeliveryRequest.Builder()
.SetSessionId(response.Request.SessionId)
.SetTntId(response.Response?.Id?.TntId)
.SetNotifications(new List<Notification>
{
new (id: "1", type: MetricType.Display, timestamp: DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
mbox: new NotificationMbox("product1", "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"),
tokens: new List<string> { "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==" })
})
.Build();
var notificationResponse = await this.targetClient.SendNotificationsAsync(notificationRequest);
此範例假設您已初始化SDK。
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3