Экспорт (0) Печать
Развернуть все

Получение свойств больших двоичных объектов

Обновлено: Июнь 2014 г.

Операция Get Blob Properties возвращает все пользовательские метаданные, стандартные свойства HTTP и системные свойства большого двоичного объекта. Операция не возвращает содержимое большого двоичного объекта.

Запрос Get Blob Properties можно составить следующим образом. Рекомендуется использовать протокол HTTPS. Замените myaccount именем нужной учетной записи хранения.

 

  URI запроса метода HEAD Версия HTTP

https://myaccount.blob.core.windows.net/mycontainer/myblob

https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>

HTTP/1.1

При построении запроса к эмулированной службе хранилища укажите имя узла эмулятора и порт службы BLOB-объектов как 127.0.0.1:10000, затем укажите имя эмулированной учетной записи хранилища.

 

  URI запроса метода HEAD Версия HTTP

http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob

HTTP/1.1

Дополнительные сведения см. в Использование эмулятора хранилища Azure для разработки и тестирования.

В URI запроса могут быть заданы следующие дополнительные параметры.

 

Параметр Описание

snapshot

Необязательно. Параметр моментального снимка является непрозрачным значением DateTime, которое, если присутствует, указывает моментальный снимок BLOB-объекта для получения. Дополнительные сведения о работе с моментальными снимками BLOB-объектов см. в разделе Создание моментальных снимков больших двоичных объектов

timeout

Необязательно. Параметр timeout указывается в секундах. Дополнительные сведения см. в Задание времени ожидания для операций службы BLOB-объектов.

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

 

Заголовок запроса Описание

Authorization

Обязательно. Указывает схему проверки подлинности, имя учетной записи и подпись. Дополнительные сведения см. в Проверка подлинности для служб хранения Azure.

Date или x-ms-date

Обязательно. Задает время в формате UTC для запроса. Дополнительные сведения см. в Проверка подлинности для служб хранения Azure.

x-ms-version

Обязательно для всех запросов с проверкой подлинности, необязательно для анонимных запросов. Задает версию операции, используемой для этого запроса. Дополнительные сведения см. в Управление версиями для служб хранилища Azure.

x-ms-lease-id: <ID>

Необязательно. Если этот заголовок указан, то операция Get Blob Properties будет выполнена только в том случае, если выполняются оба следующих условия.

  • Аренда BLOB-объекта в настоящее время активна.

  • Идентификатор аренды, указанный в запросе, соответствует данному идентификатору у BLOB-объекта.

Если оба этих условия не выполняются, то запрос завершится ошибкой, а операция Get Blob Properties завершится ошибкой с кодом состояния 412 (не выполняется необходимое условие).

x-ms-client-request-id

Необязательно. Предоставляет сформированное клиентом непрозрачное значение с ограничением в 1 КБ, которое записывается в журналы аналитики, когда включено ведение журналов аналитики хранилища. Этот заголовок настоятельно рекомендуется использовать для соотнесения действий, выполняемых на стороне клиента, с запросами, получаемыми сервером. Дополнительные сведения см. в разделах Сведения о ведении журнала службы аналитики хранилища и Ведение журналов в Windows Azure: использование журналов для отслеживания запросов к хранилищу.

Эта операция также поддерживает использование условных заголовков для возврата свойств большого двоичного объекта и метаданных только при выполнении условия. Дополнительные сведения см. в Указание условных заголовков для операций со службой BLOB-объектов.

Ответ включает код состояния HTTP и набор заголовков ответа.

Успешная операция возвращает код состояния 200 (ОК).

Сведения о кодах состояния см. в разделе Коды состояний и ошибок.

Ответ для этой операции включает следующие заголовки. Ответ может также включать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют Спецификации протокола HTTP/1.1.

 

Заголовок ответа Описание

Last-Modified

Дата и время последнего изменения BLOB-объекта. Дата в формате согласно RFC 1123. Дополнительные сведения см. в разделе Представление значений даты и времени в заголовках.

Любая операция, которая изменяет BLOB-объект, в том числе обновление метаданных или свойств BLOB-объекта, изменяет время последнего изменения BLOB-объекта.

x-ms-meta-name:value

Набор пар «имя-значение», который соответствует пользовательским метаданным, связанным с данным большим двоичным объектом.

x-ms-blob-type:<BlockBlob|PageBlob>

Тип большого двоичного объекта.

x-ms-copy-completion-time:<datetime>

Версия 2012-02-12 и более поздние. Время завершения последней попытки операции Copy Blob, в которой этот большой двоичный объект был целевым. Это значение может указывать время завершенной, отмененной или неуспешной попытки копирования. Этот заголовок не выводится, если копирование не завершено, если большой двоичный объект не является целевым в операции Copy Blob либо если большой двоичный объект был изменен после завершения операции Copy Blob с помощью методов Set Blob Properties, Put Blob или Put Block List.

x-ms-copy-status-description: <error string>

В версии 2012-02-12 и более поздних этот заголовок выводится только тогда, когда параметр x-ms-copy-status имеет значение failed или pending. Описывает причину неустранимого или устранимого сбоя операции копирования. Этот заголовок не выводится, если большой двоичный объект не является целевым в операции Copy Blob либо если большой двоичный объект был изменен после завершения операции Copy Blob с помощью методов Set Blob Properties, Put Blob или Put Block List.

x-ms-copy-id: <id>

Версия 2012-02-12 и более поздние. Строковый идентификатор последней попытки операции Copy Blob, в которой этот большой двоичный объект был целевым. Этот заголовок не выводится, если большой двоичный объект не является целевым в операции Copy Blob либо если большой двоичный объект был изменен после завершения операции Copy Blob с помощью методов Set Blob Properties, Put Blob или Put Block List.

x-ms-copy-progress: <bytes copied/bytes total>

Версия 2012-02-12 и более поздние. Содержит число скопированных байтов и общее число байтов в источнике после последней попытки операции Copy Blob, в которой этот большой двоичный объект был целевым. Может показывать от 0 до Content-Length скопированных байтов. Этот заголовок не выводится, если большой двоичный объект не является целевым в операции Copy Blob либо если большой двоичный объект был изменен после завершения операции Copy Blob с помощью методов Set Blob Properties, Put Blob или Put Block List.

x-ms-copy-source: url

Версия 2012-02-12 и более поздние. URL-адрес длиной до 2 KБ, который указывает исходный большой двоичный объект, использованный в последней попытке операции Copy Blob, в которой большой двоичный объект был целевым. Этот заголовок не выводится, если большой двоичный объект не является целевым в операции Copy Blob либо если большой двоичный объект был изменен после завершения операции Copy Blob с помощью методов Set Blob Properties, Put Blob или Put Block List.

x-ms-copy-status: <pending | success | aborted | failed>

Версия 2012-02-12 и более поздние. Состояние операции копирования, определенной параметром x-ms-copy-id, со следующими значениями:

  • success: копирование завершено успешно.

  • pending: идет копирование. Параметр x-ms-copy-status-description показывает, мешают ли временные, устранимые ошибки копированию, не вызывая сбоя.

  • aborted: копирование завершено методом Abort Blob Copy.

  • failed: ошибка копирования. Дополнительные сведения об ошибке см. в разделе x-ms-copy-status-description.

Этот заголовок не выводится, если большой двоичный объект не является целевым в операции Copy Blob либо если большой двоичный объект был изменен после завершения операции Copy Blob с помощью методов Set Blob Properties, Put Blob или Put Block List.

x-ms-lease-duration: <infinite | fixed>

Когда большой двоичный объект получил аренду, указывает, какой срок имеет аренда — конечный или бесконечный. Включается для запросов, сделанных с помощью версии 2012-02-12 и более поздних версий.

x-ms-lease-state: <available | leased | expired | breaking | broken>

Состояние аренды большого двоичного объекта. Включается для запросов, сделанных с помощью версии 12.02.12 и более поздних версий.

x-ms-lease-status:<locked| unlocked>

Состояние аренды большого двоичного объекта.

Content-Length

Размер большого двоичного объекта в байтах. Для страничного большого двоичного объекта этот заголовок возвращает значение заголовка x-ms-blob-content-length, хранящегося с большим двоичным объектом.

Content-Type

Тип контента, указанный для большого двоичного объекта. Если тип содержимого не указан, тип содержимого по умолчанию — application/octet-stream.

Etag

ETag содержит значение, которое клиент может использовать для выполнения условных операций GET с помощью заголовка запроса If-Modified . Если версия запроса 2011-08-18 или более поздняя, то значение ETag будет указано в кавычках.

Content-MD5

Если заголовок Content-MD5 задан для большого двоичного объекта, то возвращается этот заголовок, чтобы клиент мог проверить целостность содержимого сообщения.

В версии 2012-02-12 и более поздних версиях метод Put Blob задает значение хэша MD5 большого двоичного объекта, даже если запрос Put Blob не включает заголовок MD5.

Content-Encoding

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

Content-Language

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

Content-Disposition

Если заголовок запроса Content-Disposition уже был задан для большого двоичного объекта, то значение возвращается в этом заголовке в версии 2013-08-15 и более поздних версиях.

Поле заголовка ответа Content-Disposition предоставляет дополнительные сведения о том, как обрабатывать полезные данные ответа, а также может использоваться для присоединения дополнительных метаданных. Например, если задано значение attachment, агент пользователя не покажет ответ, а выведет на экран диалоговое окно «Сохранить как».

Cache-Control

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

x-ms-blob-sequence-number

Текущий порядковый номер для страничного большого двоичного объекта.

Этот заголовок не возвращается для больших двоичных объектов.

x-ms-request-id

Этот заголовок однозначно определяет выполненный запрос, его также можно использовать для устранения связанных с запросом неполадок. Дополнительные сведения см. в Устранение неполадок при API-операциях.

x-ms-version

Указывает версию службы BLOB-объектов, используемую для выполнения запроса. Этот заголовок возвращается для запросов к версии 2009-09-19 и более поздним версиям.

Этот заголовок также возвращается для анонимных запросов без указания версии, если контейнер был помечен как доступный для общего доступа с помощью версии 2009-09-19 службы BLOB-объектов.

Date

Значение даты и времени в формате UTC, сформированное службой и указывающее время, когда был инициирован ответ.

Accept-Ranges: bytes

Указывает, что служба поддерживает запросы для частичного содержимого большого двоичного объекта. Включается для запросов, сделанных с помощью версии 15.08.13 и более поздних версий.

Response Status:
HTTP/1.1 200 OK

Response Headers:
x-ms-meta-Name: myblob.txt
x-ms-meta-DateUploaded: Sun, 23 Oct 2013 18:45:18 GMT
x-ms-blob-type: BlockBlob
x-ms-lease-status: unlocked
x-ms-lease-state: available
Content-Length: 11
Content-Type: text/plain; charset=UTF-8
Date: Sun, 23 Oct 2013 19:49:38 GMT
ETag: "0x8CAE97120C1FF22"
Accept-Ranges: bytes
x-ms-version: 2013-08-15
Last-Modified: Wed, 23 Oct 2013 19:49
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0

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

Чтобы определить, успешно ли завершилась операция Copy Blob, сначала убедитесь, что значение заголовка x-ms-copy-id соответствует идентификатору копирования, полученному по первоначальному вызову метода Copy Blob. Соответствие гарантирует, что другое приложение не вызвало операцию отмены копирования и не начало новую операцию Copy Blob. Затем проверьте заголовок x-ms-copy-status: success. Однако следует иметь в виду, что все операции записи в большой двоичный объект, за исключением операций Lease, Put Page и Put Block, удаляют свойства x-ms-copy-* из большого двоичного объекта. Эти свойства также не копируются операциями Copy Blob, которые используют версии до 2012-02-12.

x-ms-copy-status-description содержит сведения об ошибке Copy Blob. В следующей таблице приведены значения x-ms-copy-status-description и их смысл.

В следующей таблице описаны три поля каждого значения x-ms-copy-status-description.

 

Компонент Описание

Код состояния HTTP

Обычно это целое число из 3 цифр, указывающее ошибку.

Код ошибки

Ключевое слово описания ошибки, предоставляемое Azure в элементе <ErrorCode>. Если элемент <ErrorCode> отсутствует, то используется ключевое слово со стандартным текстом ошибки, связанное с кодом состояния HTTP из 3 цифр по спецификации HTTP. См. раздел Общие коды ошибок API-интерфейса REST.

Сведения

Подробное описание ошибки в кавычках.

В следующей таблице описаны значения x-ms-copy-status и x-ms-copy-status-description распространенных ошибок.

ImportantВажно!
Приведенный здесь текст описания может быть изменен без уведомления и даже без изменения версии, поэтому не следует полагаться на точное совпадение текста.

 

Сценарий Значение x-ms-copy-status Значение x-ms-copy-status-description

Операция копирования успешно завершена.

успешно

пусто

Пользователь прекратил операцию копирования до завершения.

aborted

пусто

Во время считывания данных из исходного большого двоичного объекта возникла ошибка операции копирования, однако операция будет повторена.

ожидание

502 (неверный шлюз). «Во время чтения данных из источника возникла ошибка, предполагающая повтор операции. Попытка будет повторена. Время ошибки: <time>»

Во время записи в целевой большой двоичный объект возникла ошибка операции копирования, однако операция будет повторена.

ожидание

500 (внутренняя ошибка сервера). «Обнаружена ошибка, предполагающая повтор операции. Попытка будет повторена. Время ошибки: <time>»

Во время считывания данных из исходного большого двоичного объекта возникла неустранимая ошибка операции копирования.

ошибка

404 (ресурс не найден). «Возникла ошибка копирования во время чтения данных из источника».

noteПримечание
Когда Azure сообщает об этой ошибке, возвращается ключевое слово ResourceNotFound в элементе <ErrorCode>. Если элемент <ErrorCode> отсутствует в ответе, используется стандартное строковое представление состояния HTTP, например NotFound.

Время ожидания, ограничивающее все операции копирования, истекло. (В настоящий момент время ожидания составляет 2 недели.)

ошибка

500 (операция отменена). «Копирование превысило максимально допустимое время».

Во время чтения из источника операция копирования слишком часто завершалась ошибкой и не удовлетворила допустимому количеству попыток. (Это время ожидания предотвращает повторы операции с очень плохим источником в течение двух недель, прежде чем возникает ошибка.)

ошибка

500 (операция отменена). «Копирование завершилось ошибкой во время чтения данных из источника».

Корпорация Майкрософт проводит интернет-опрос, чтобы выяснить ваше мнение о веб-сайте MSDN. Если вы желаете принять участие в этом интернет-опросе, он будет отображен при закрытии веб-сайта MSDN.

Вы хотите принять участие?
Показ:
© 2014 Microsoft