Заархивируйте несколько файлов хранилища больших двоичных объектов Azure и получите их zip-привязку

#azure #zip #azure-blob-storage

#azure #zip #azure-blob-storage

Вопрос:

Я хочу создать функциональность в своем ASP.Приложение Net MVC, в котором пользователь сможет загружать несколько файлов больших двоичных объектов AZ в zip-папке. Для этого я искал разные сценарии.

  1. Загрузите несколько файлов через сетевой поток и создайте zip-файл через этот сетевой поток.
  2. Создайте zip-файл для нескольких файлов в Azure и получите эти общедоступные ссылки для загрузки zip.

Моя проблема в том, что уровень общедоступного доступа к большим двоичным объектам AZ отключен. Итак, вот почему я не могу загружать все файлы через сетевой поток, потому что есть вероятность, что файлы могут быть повреждены из-за уровня доступа.

Я хочу, чтобы моя функция AZ заархивировала мои файлы в большом двоичном объекте AZ, затем я поделюсь этой zip-ссылкой с пользователем для загрузки файлов в формате zip.

Ответ №1:

Моя проблема в том, что уровень общедоступного доступа к большим двоичным объектам AZ отключен. Итак, вот почему я не могу загружать все файлы через сетевой поток, потому что есть вероятность, что файлы могут быть повреждены из-за уровня доступа.

Если вы установите уровень общего доступа на disable, анонимный доступ к большому двоичному объекту обязательно будет заблокирован. И если вы пройдете проверку, вы сможете получить доступ к большому двоичному объекту без каких-либо проблем.

Я хочу, чтобы моя функция AZ заархивировала мои файлы в большом двоичном объекте AZ, затем я поделюсь этой zip-ссылкой с пользователем для загрузки файлов в формате zip.

Конечно, вы можете сделать это с помощью функции azure, но ваши настройки хранилища делают невозможным доступ к большому двоичному объекту для любых анонимных пользователей. Просто дать ссылку недостаточно, вам нужно заставить их пройти верификацию.

Я предлагаю вам не обращаться к большим двоичным объектам на основе ссылки. Пожалуйста, используйте код для генерации токена sas и получите zip-файл через аутентификацию токена sas.

Комментарии:

1. Я понял вашу точку зрения по поводу токена SAS, но возможно ли создать zip в хранилище больших двоичных объектов без загрузки файлов? Если да, можете ли вы поделиться какой-либо ссылкой, которая поможет мне понять, как это происходит. Заранее спасибо.

2. @AbdulRehman Я не знаю языка, который вы используете, если используете C #, тогда проверьте этот API reference:docs.microsoft.com/en-us/dotnet/api / … Самый прямой способ решить ваши проблемы — сжать данные каждого файла непосредственно на уровне потока в zip-поток (я не уверен, существует ли этот метод). Или вы можете загрузить zip-файл и удалить его после загрузки. В любом случае данные должны проходить через клиент, и нет никакой возможности, что Azure storage сможет выполнить операцию zip независимо.

3. @AbdulRehman И это: docs.microsoft.com/en-us/azure/storage/blobs /…