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

Создание контейнера

Обновлено: Февраль 2014 г.

Операция Create Container создает новый контейнер для указанной учетной записи. Если контейнер с таким именем уже существует, операция завершается ошибкой.

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

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

 

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

PUT

https://myaccount.blob.core.windows.net/mycontainer?restype=container

HTTP/1.1

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

 

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

PUT

http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container

HTTP/1.1

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

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

 

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

timeout

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

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

 

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

Authorization

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

Date или x-ms-date

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

x-ms-version

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

x-ms-meta-name:value

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

Обратите внимание: начиная с версии 2009-09-19, имена метаданных должны соответствовать правилам именования для идентификаторов C#.

x-ms-blob-public-access

Необязательно. Определяет, можно ли получить общий доступ к данным контейнера, а также уровень доступа. Возможные значения.

  • container: определяет полный общий доступ для чтения для контейнера и данных больших двоичных объектов. Клиенты могут перечислять большие двоичные объекты в контейнере с помощью анонимного запроса, но не могут перечислять контейнеры в пределах учетной записи хранения.

  • blob: Определяет общий доступ на чтение для BLOB-объектов. Данные большого двоичного объекта в этом контейнере могут считываться через анонимный запрос, но данные контейнера доступны не будут. Клиенты не могут перечислять большие двоичные объекты в контейнере через анонимный запрос.

Если этот заголовок не включен в запрос, то данные контейнера доступны только владельцу учетной записи.

x-ms-client-request-id

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

Request Syntax:
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container HTTP/1.1

Request Headers:
x-ms-version: 2011-08-18
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT
x-ms-meta-Name: StorageSample
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=

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

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

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

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

 

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

ETag

ETag для контейнера. Если версия запроса 2011-08-18 или более поздняя, то значение ETag будет указано в кавычках.

Last-Modified

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

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

x-ms-request-id

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

x-ms-version

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

Date

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

Response Status:
HTTP/1.1 201 Created

Response Headers:
Transfer-Encoding: chunked
Date: Sun, 25 Sep 2011 23:00:12 GMT
ETag: “0x8CB14C3E29B7E82”
Last-Modified: Sun, 25 Sep 2011 23:00:06 GMT
x-ms-version: 2011-08-18
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0

Вызов этой операции доступен только владельцу учетной записи.

Контейнеры создаются для учетной записи хранилища немедленно. Нельзя вложить один контейнер в другой.

При необходимости можно создать контейнер по умолчанию или корневой контейнер для учетной записи хранилища. Корневой контейнер можно вывести из URL-адреса запроса ресурса больших двоичных объектов. Корневой контейнер позволяет указать ссылку на большой двоичный объект из верхнего уровня иерархии учетной записи хранилища без указания имени контейнера.

Чтобы добавить корневой контейнер к учетной записи хранилища, создайте контейнер с именем $root. Постройте запрос следующим образом.

Request Syntax:
PUT https://myaccount.blob.core.windows.net/$root?restype=container HTTP/1.1

Request Headers:
x-ms-version: 2011-08-18
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT
x-ms-meta-Name: StorageSample
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=

Можно задать метаданные контейнера во время его создания, включив в запрос один или несколько заголовков метаданных. Формат для заголовка метаданных — x-ms-meta-name:value.

Если при вызове метода Create Container контейнер с таким именем удаляется, сервер возвращает код состояния 409 (конфликт), при этом дополнительные сведения об ошибке указывают на удаление контейнера.

Показ:
© 2014 Microsoft