Ich habe diesen Code geschriebentesten, ob Google Cloud Storage Bucket existiert?
private void doesBucketExist(String bucketName) {
try {
GoogleCredential credential = myUtil.getCredential();
JsonFactory jsonFactory = new JacksonFactory();
HttpTransport transport = GoogleNetHttpTransport.newTrustedTransport();
Storage.Builder storageBilder = new Storage.Builder(transport, jsonFactory, credential);
Storage storage = storageBilder.build();
Objects objects = storage.objects();
List listObjects = objects.list(bucketName);
if (listObjects != null && listObjects.getBucket().equalsIgnoreCase(bucketName)) {
System.out.println("Bucket exist");
} else {
System.out.println("Bucket does not exist");
}
} catch (Exception e) {
throw e;
}
}
Es gibt listObjects
auch wenn ich so bekomme ich Bucket exist
einen nicht existierte Bucket-Namen übergeben.
Ich habe this gesehen aber konnte das nicht in meinem Code verwenden, da storage
von anderem Paket von ist, was ich in meinem Programm verwende.
Wie kann ich sicherstellen, dass der angegebene Bucket existiert oder nicht?
Woher wissen Sie, dass der Bucket-Name, den Sie übergeben, nicht existiert? Hast du versucht, einen Bucket mit dem Namen in der Dev-Konsole zu erstellen und es ist verwendbar? Bitte beachten Sie, dass der Bucket-Namespace global und öffentlich sichtbar ist, so dass Sie nicht wissen, ob er existiert oder nicht: p –
ja, getestet mit meinem eigenen Namen mit Zufallszahl als Name des Buckets und es gibt immer noch dasselbe, als ob es bereits existierte. – Extreme
Können Sie versuchen, einen Bucket mit dem Namen (z. B. Ihren eigenen Namen mit Zufallszahlen) in der Developers Console zu erstellen, um zu sehen, ob es noch existierte oder nicht? –