SDK Kurulumu
Aşağıdaki bağımlılığı Maven projenize ekleyin:
<dependency>
<groupId>com.aliyun.datahub</groupId>
<artifactId>aliyun-sdk-datahub</artifactId>
<version>2.29.5</version>
</dependency>
JDK: 1,8 veya daha yeni bir sürüm kullanın.
API anahtar tabanlı kimlik doğrulama gerektiriyorsa AccessKey ID ve AccessKey Secret değerlerini projenizde yapılandırın. Daha fazla bilgi için Kimlik Doğrulama konusuna bakın.
Kimlik Doğrulama
Arka Plan
AccessKey (AK), OpenAPI çağrılarını kimlik doğrulamak amacıyla Alibaba Cloud tarafından sağlanan bir erişim anahtarıdır. AccessKey ID ve AccessKey Secret bileşenlerinden oluşur. Her iki değeri de gizli tutmanız gerekir.
Alibaba Cloud Credentials, Alibaba Cloud geliştiricileri için bir kimlik bilgisi yönetim aracıdır. Varsayılan kimlik bilgisi sağlayıcı zincirini yapılandırdığınızda AccessKey'inizi düz metin olarak kodlamanıza gerek kalmadan Alibaba Cloud OpenAPI'yi çağırabilirsiniz. Bu yaklaşım cloud kaynaklarınızın güvenliğini artırır.
Ön Koşullar
Bir RAM kullanıcısı için AccessKey ID ve AccessKey Secret değerlerini edinin. Talimatlar için bkz. RAM kullanıcısının AccessKey bilgilerini görüntüleme.
-
Önemli
Ana hesabınızın AccessKey bilgileri sızdığı takdirde hesaptaki tüm kaynaklar tehlikeye girer. Hesabınızı korumak için bir RAM kullanıcısı oluşturun ve yalnızca zorunlu hallerde ana hesap için AccessKey oluşturun.
RAM kullanıcısının AccessKey Secret değeri yalnızca AccessKey oluşturulurken görüntülenir ve sonradan alınamaz. Bu nedenle AccessKey Secret değerini hemen güvenli bir şekilde kaydedin.
-
Alibaba Cloud Credentials aracını yükleyin.
Maven ile kurulum yapmak için (Credentials'ın en son sürümünü kullanmanızı öneririz: latest version):
<dependency> <groupId>com.aliyun</groupId> <artifactId>credentials-java</artifactId> <version>0.2.11</version> </dependency> JDK 1.7 veya daha yeni bir sürümü yükleyin.
Yapılandırma yöntemleri
Bu konuda örnek olarak ortam değişkenleri kullanılmıştır. Diğer yapılandırma yöntemleri için bkz. Ortam değişkenlerini yapılandırma.
Yapılandırma dosyası kullanırken sisteminizde ALIBABA_CLOUD_ACCESS_KEY_ID ve ALIBABA_CLOUD_ACCESS_KEY_SECRET ortam değişkenlerinin ayarlanmadığından emin olun. Bu değişkenler ayarlanmışsa yapılandırma dosyasına göre öncelik kazanırlar.
ALIBABA_CLOUD_ACCESS_KEY_ID ve ALIBABA_CLOUD_ACCESS_KEY_SECRET ortam değişkenlerini ayarlayarak varsayılan bir erişim kimlik bilgisi oluşturabilirsiniz. Uygulamanız API çağrılarını kimlik doğrulamak için bu değişkenleri otomatik olarak kullanır.
Ortam değişkenlerini yapılandırma
ALIBABA_CLOUD_ACCESS_KEY_ID ve ALIBABA_CLOUD_ACCESS_KEY_SECRET ortam değişkenlerini ayarlayın.
-
Linux ve macOS sistemleri için
Aşağıdaki komutları çalıştırın:
export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id> export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret><access_key_id>yerine AccessKey ID'nizi ve<access_key_secret>yerine AccessKey Secret değerinizi yazın. -
Windows sistemleri için
ALIBABA_CLOUD_ACCESS_KEY_IDveALIBABA_CLOUD_ACCESS_KEY_SECRETadında iki yeni ortam değişkeni oluşturun. Değerlerini sırasıyla AccessKey ID ve AccessKey Secret olarak ayarlayın.Windows'u yeniden başlatın.
Kod örneği
Notlar
SDK v2.9'dan yükseltme yapan kullanıcılar için: setTimestampInms yöntemini değiştirirken zaman damgası değerini 1.000 ile çarpın.
Normal çalışma koşullarında veri okuma ve yazma işlemleri için yalnızca
putRecords / putRecordsByShardvegetRecordsAPI'leri sıkça çağrılır.getTopic,getCursorvelistShardgibi diğer API'ler genellikle yalnızca başlatma sırasında çağrılır.Projenizde bir veya daha fazla DatahubClient örneği oluşturabilirsiniz. DatahubClient örnekleri iş parçacığı güvenlidir.
-
Farklı paketlerde aynı ada sahip sınıflarla karşılaşırsanız 2,12 ve sonraki sürümlerin com.aliyun.datahub.client paketindeki sınıfları kullandığını unutmayın. Diğer paketlerdeki sınıflar, 2,12 öncesi SDK sürümleriyle geriye dönük uyumluluğu korumak amacıyla tutulmaktadır. Örnek:
// Version 2.12 com.aliyun.datahub.client.model.RecordSchema // If your code was written with an SDK version earlier than 2.12 and you want to avoid code changes after upgrading, continue to use this type. com.aliyun.datahub.common.data.RecordSchema Parse body failed, Offset: 0hatası oluşursa enableBinary parametresinifalseolarak ayarlamayı deneyin.