Я загружаю файлы в хранилище BLOB-объектов AZURE, используя azure-storage java sdk версии 8.6.5. Если я загружаю файл из веб-консоли, я вижу значение Content-MD5.
Но я не вижу значение CONTENT-MD5 при загрузке с использованием следующего примера кода: -
BlobRequestOptions blobRequestOptions = new BlobRequestOptions();
blobRequestOptions.setStoreBlobContentMD5(true);
cloudBlockBlob.uploadBlock(blockId, inputstream , length, null, blobRequestOptions, null);
Файл разбивается на несколько частей и загружается в несколько параллельных потоков и, наконец, фиксируется в черном списке следующим образом. Загрузка файлов работает нормально.
cloudBlockBlob.commitBlockList(blockIds, null, blobRequestOptions, null);
Любые указатели будут очень признательны, спасибо!
Также любые идеи, как лучше всего проверить целостность файла программно и обеспечить правильную загрузку файла, если контент-MD5 недоступен. Поддерживает ли хранилище BLOB-объектов Azure что-либо для проверки содержимого?
Если вы хотите получить значение CONTENT-MD5
после успешной загрузки файла, просто попробуйте код ниже:
cloudBlockBlob.getProperties().getContentMD5()
Если вам все еще не хватает значения content-MD5, эта ссылка может быть полезной.
@Arti, я вижу, похоже, здесь та же проблема, с которой вы столкнулись: github.com/Azure/azure-storage-java/issues/495
Спасибо @Стэнли. Ссылка, которой поделились, полезна
Привет @Arti, рад узнать, что эта ссылка полезна. Я отредактировал свой ответ, пожалуйста, примите его, чтобы он мог помочь другим, и закройте этот вопрос :)
Спасибо за ваш ответ. Я попробовал этот код, и я получаю значение NULL для ContentMD5, тогда как другие свойства, такие как размер, Etag и т. д., имеют правильные значения.