Как удалить один файл BLOB-объекта с помощью Azure SDK для Java v12?

Как удалить один файл BLOB-объекта с помощью пакета Azure SDK v12 для Java? Это то, что я пробовал до сих пор. Но не работает.

Кстати, пример кода - Kotlin:

val blobServiceClient: BlobServiceAsyncClient by lazy {
    BlobServiceClientBuilder()
        .endpoint(blobProperties.endpoint)
        .sasToken(blobProperties.sasToken)
        .buildAsyncClient()
}

val containerClient = blobServiceClient.getBlobContainerAsyncClient(blobProperties.containerName)

val blobName = "test.jpg"

val imageClient = containerClient.getBlobAsyncClient(blobName).blockBlobAsyncClient
val deleteImage = imageClient.delete()
println(deleteImage)

Мы используем библиотеку «azure-storage-blob-12.4.0.jar»


person FFirmenich    schedule 09.04.2020    source источник
comment
Что вы имеете в виду, когда говорите But it doesn't work.? У вас есть ошибки?   -  person Gaurav Mantri    schedule 09.04.2020
comment
Нет, я не получаю ошибок. Ответ - это MonoFlatMap без какого-либо значимого содержания. Но, проверив контейнер в обозревателе хранилища Microsoft Azure, я вижу, что файлы все еще существуют.   -  person FFirmenich    schedule 09.04.2020
comment
Можете ли вы попробовать изменить следующий код imageClient.delete() на imageClient.delete().doOnSuccess(response -> System.out.println("Completed delete"));?   -  person Gaurav Mantri    schedule 09.04.2020
comment
Спасибо, но у меня это не сработало. Я даже не получил ответа на все функции doOn *. Я думаю, проблема заключалась в том, что сценарий даже не ждал ответа, поэтому ничего не было запущено. В любом случае это подтолкнуло меня искать в правильном направлении. Тогда спасибо!   -  person FFirmenich    schedule 09.04.2020


Ответы (1)


В конце концов, у меня сработал простой block(), который заставляет MonoFlatMap блокироваться на неопределенное время, пока не будет получен следующий сигнал.

containerClient.getBlobAsyncClient(blobName).delete().block()

Если вы хотите прочитать дополнительную информацию о block (), вы можете найти ее здесь: https://projectreactor.io/docs/core/release/api/reactor/core/publisher/Mono.html#block--

person FFirmenich    schedule 09.04.2020