Создание каталога
Операция Create Directory
создает новый каталог под указанным общим ресурсом или родительским каталогом. Ресурс каталога содержит свойства для этого каталога. Он не содержит список файлов или подкаталогов, содержащихся в каталоге.
Доступность протокола
Протокол общей папки с включенным доступом | Доступный |
---|---|
SMB | |
NFS |
Просьба
Можно создать запрос Create Directory
следующим образом. Рекомендуется использовать ПРОТОКОЛ HTTPS.
Метод | URI запроса | ВЕРСИЯ HTTP |
---|---|---|
PUT |
https://myaccount.file.core.windows.net/myshare/myparentdirectorypath/mydirectory?restype=directory |
HTTP/1.1 |
Замените компоненты пути в URI запроса собственным, как показано в следующей таблице:
Компонент path | Описание |
---|---|
myaccount |
Имя учетной записи хранения. |
myshare |
Имя общей папки. |
myparentdirectorypath |
Необязательный. Путь к родительскому каталогу, в котором необходимо создать mydirectory. Если родительский путь к каталогу опущен, каталог будет создан в указанной общей папке. Если указан родительский каталог, он уже должен существовать в общей папке, прежде чем создать mydirectory. |
mydirectory |
Имя создаваемого каталога. |
Дополнительные сведения об ограничениях именования путей см. в разделе Имена и ссылочные папки, каталоги, файлы и метаданные.
Параметры URI
В URI запроса можно указать следующие дополнительные параметры.
Параметр | Описание |
---|---|
timeout |
Необязательный. Параметр timeout выражается в секундах. Дополнительные сведения см. в разделе Настройка времени ожидания операций службы файлов. |
Текст запроса
Никакой.
Заголовки запросов
Обязательные и необязательные заголовки запросов описаны в следующей таблице:
Параметр | Описание |
---|---|
Authorization |
Обязательно. Указывает схему авторизации, имя учетной записи и подпись. Дополнительные сведения см. в статье Авторизация запросов к службе хранилища Azure. |
Date или x-ms-date |
Обязательно. Указывает время универсального времени (UTC) для запроса. Дополнительные сведения см. в статье Авторизация запросов к службе хранилища Azure. |
x-ms-version |
Требуется для всех авторизованных запросов. Указывает версию операции, используемой для этого запроса. Дополнительные сведения см. в разделе Управление версиями служб хранилища Azure. |
x-ms-meta-name:value |
Необязательный. Версия 2015-02-21 или более поздняя. Пара "имя-значение", связанная с каталогом в качестве метаданных. Имена метаданных должны соответствовать правилам именования для идентификаторов C#. |
x-ms-file-permission: { inherit ¦ <SDDL> ¦ <binary> } |
В версии 2019-02-02–2021-04-10 этот заголовок требуется, если x-ms-file-permission-key не указан. По состоянию на версию 2021-06-08 оба заголовка являются необязательными. Это разрешение является дескриптором безопасности для каталога, указанного в x-ms-file-permission-format . Этот заголовок можно использовать, если размер разрешений превышает 8 кибибайт (KiB). В противном случае можно использовать x-ms-file-permission-key . Если он указан, он должен иметь владельца, группу и список управления доступом (DACL). Можно передать значение inherit для наследования от родительского каталога.примечание. Можно указать x-ms-file-permission или x-ms-file-permission-key . Если ни заголовок не указан, используется значение по умолчанию inherit . |
x-ms-file-permission-format: { sddl ¦ binary } |
Необязательный. Версия 2024-11-04 или более поздняя. Указывает, является ли значение, переданное в x-ms-file-permission , в SDDL или в двоичном формате. Если x-ms-file-permission-key задано значение inherit , этот заголовок не должен быть задан. Если x-ms-file-permission-key задано любое другое значение, отличное от inherit , и если этот заголовок не задан, используется значение по умолчанию sddl . |
x-ms-file-permission-key: <PermissionKey> |
Ключ разрешения, заданного для каталога. В версии 2019-02-02–2021-04-10 этот заголовок требуется, если x-ms-file-permission не указан. По состоянию на версию 2021-06-08 оба заголовка являются необязательными. Этот ключ можно создать с помощью API Create-Permission .примечание. Можно указать x-ms-file-permission или x-ms-file-permission-key . Если ни заголовок не указан, значение по умолчанию inherit используется для заголовка x-ms-file-permission . |
x-ms-file-attributes |
Обязательный: версия 2019-02-02–2021-04-10. Необязательно: версия 2021-06-08 и более поздняя. Атрибуты файловой системы, заданные в каталоге. См. список доступных атрибутов . Значением по умолчанию является Каталог. |
x-ms-file-creation-time: { now ¦ <DateTime> } |
Обязательно: версия 2019-02-02–2021-04-10. Необязательно: версия 2021-06-08 и более позднюю. Свойство времени создания в формате UTC для каталога. Значение now можно использовать для указания времени запроса. Значение по умолчанию — now . |
x-ms-file-last-write-time: { now ¦ <DateTime> } |
Обязательный: версия 2019-02-02–2021-04-10. Необязательно: версия 2021-06-08 или более поздняя. Последнее свойство записи для каталога в формате UTC. Значение now можно использовать для указания времени запроса. Значение по умолчанию — now . |
x-ms-client-request-id |
Необязательный. Предоставляет созданное клиентом непрозрачное значение с ограничением символов 1-kibibyte (KiB), записанным в журналах при настройке ведения журнала. Настоятельно рекомендуется использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в статье Monitor Azure Files. |
x-ms-file-change-time: { now ¦ <DateTime> } |
Необязательный. Свойство времени изменения времени в формате ISO 8601 (UTC) изменится в формате ISO 8601. Версия 2021-06-08 и более позднюю. Значение now можно использовать для указания времени запроса. Значение по умолчанию — now . |
x-ms-file-request-intent |
Требуется, если заголовок Authorization указывает токен OAuth. Допустимое значение равно backup . Этот заголовок указывает, что Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action или Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action следует предоставить, если они включены в политику RBAC, назначенную удостоверению, авторизованному с помощью заголовка Authorization . Доступно для версии 2022-11-02 и более поздних версий. |
x-ms-allow-trailing-dot: { <Boolean> } |
Необязательный. Версия 2022-11-02 и более поздних версий. Логическое значение указывает, следует ли обрезать конечную точку в URL-адресе запроса. Дополнительные сведения см. в разделе Именование и ссылки на общие папки, каталоги, файлы и метаданные. |
Пример запроса
PUT https://myaccount.file.core.windows.net/myshare/myparentdirectorypath/mydirectory? restype=directory HTTP/1.1
Request headers:
x-ms-version: 2014-02-14
x-ms-date: Mon, 27 Jan 2014 22:50:32 GMT
x-ms-meta-Category: Images
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=
Ответ
Ответ включает код состояния HTTP и набор заголовков ответа.
Код состояния
Успешная операция возвращает код состояния 201 (создан).
Дополнительные сведения о кодах состояния см. в коды состояния и коды ошибок.
Заголовки ответа
Ответ для этой операции содержит заголовки, описанные в следующей таблице. Ответ также может включать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют спецификации протокола HTTP/1.1.
Заголовок ответа | Описание |
---|---|
ETag |
Содержит значение, представляющее версию каталога, заключенную в кавычки. |
Last-Modified |
Возвращает дату и время последнего изменения каталога. Формат даты следует RFC 1123. Дополнительные сведения см. в разделе Представление значений даты и времени в заголовках. Любая операция, которая изменяет каталог или его свойства, обновляет время последнего изменения. Операции с файлами не влияют на время последнего изменения каталога. |
x-ms-request-id |
Уникально идентифицирует выполненный запрос и может использоваться для устранения неполадок запроса. Дополнительные сведения см. в разделе Устранение неполадок с операциями API. |
x-ms-version |
Указывает версию файлов Azure, которая использовалась для выполнения запроса. |
Date |
Значение даты и времени в формате UTC, созданное службой, указывающее время, когда был инициирован ответ. |
x-ms-request-server-encrypted: true/false |
Версия 2017-04-17 или более поздняя. Для этого заголовка задано значение true , если содержимое запроса успешно зашифровано с помощью указанного алгоритма и false в противном случае. |
x-ms-file-permission-key |
Ключ разрешения каталога. |
x-ms-file-attributes |
Атрибуты файловой системы в каталоге. См. список доступных атрибутов . |
x-ms-file-creation-time |
Значение даты и времени в формате UTC, представляющее свойство времени создания каталога. |
x-ms-file-last-write-time |
Значение даты и времени в формате UTC, представляющее свойство времени последней записи для каталога. |
x-ms-file-change-time |
Значение даты и времени в формате UTC, представляющее свойство времени изменения для каталога. |
x-ms-file-file-id |
Идентификатор файла каталога. |
x-ms-file-parent-id |
Идентификатор родительского файла каталога. |
x-ms-client-request-id |
Можно использовать для устранения неполадок запросов и соответствующих ответов. Значение этого заголовка равно значению заголовка x-ms-client-request-id , если оно присутствует в запросе, а значение содержит не более 1024 видимых символов ASCII. Если в запросе отсутствует заголовок x-ms-client-request-id , этот заголовок отсутствует в ответе. |
Текст ответа
Никакой.
Пример ответа
Response status:
HTTP/1.1 201 Created
Response headers:
Transfer-Encoding: chunked
Date: Mon, 27 Jan 2014 23:00:12 GMT
ETag: "0x8CB14C3E29B7E82"
Last-Modified: Mon, 27 Jan 2014 23:00:06 GMT
x-ms-version: 2014-02-14
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
Авторизация
Только владелец учетной записи может вызвать эту операцию.
Атрибуты файловой системы
Атрибут | Атрибут файла Win32 | Определение |
---|---|---|
ReadOnly | FILE_ATTRIBUTE_READONLY | Каталог, доступный только для чтения. |
Скрытый | FILE_ATTRIBUTE_HIDDEN | Каталог скрыт. Он не включен в обычный список каталогов. |
Система | FILE_ATTRIBUTE_SYSTEM | Каталог, который операционная система использует часть или использует исключительно. |
Никакой | FILE_ATTRIBUTE_NORMAL | Каталог, который не имеет других атрибутов. Этот атрибут действителен только в том случае, если он используется отдельно. |
Каталог | FILE_ATTRIBUTE_DIRECTORY | Дескриптор, определяющий каталог. |
Архив | FILE_ATTRIBUTE_ARCHIVE | Каталог, который является архивным каталогом. Приложения обычно используют этот атрибут для пометки файлов для резервного копирования или удаления. |
Автономный | FILE_ATTRIBUTE_OFFLINE | Данные каталога недоступны сразу. Этот атрибут файловой системы представлен в основном для обеспечения совместимости с Windows. Файлы Azure не поддерживают его с параметрами автономного хранилища. |
NotContentIndexed | FILE_ATTRIBUTE_NOT_CONTENT_INDEXED | Каталог не индексируется службой индексирования содержимого. |
NoScrubData | FILE_ATTRIBUTE_NO_SCRUB_DATA | Поток данных пользователя, который не для чтения с помощью средства проверки целостности фоновых данных. Этот атрибут файловой системы представлен в основном для обеспечения совместимости с Windows. |
Замечания
Если каталог с тем же именем удаляется при вызове Create Directory
, сервер возвращает код состояния 409 (конфликт) и предоставляет дополнительные сведения об ошибке, указывающие на то, что каталог удаляется.
Если каталог или файл с тем же именем уже существует, операция завершается ошибкой с кодом состояния 409 (конфликт). Если родительский каталог не существует, операция завершается ошибкой с кодом состояния 412 (сбой предварительных условий).
Невозможно создать иерархию каталогов с одной операцией Create Directory
. Каталог можно создать только в том случае, если его непосредственный родительский объект уже существует, как указано в пути. Если родительский каталог не существует, операция завершается ошибкой с кодом состояния 412 (сбой предварительных условий).
Create Directory
не поддерживается в моментальном снимке общего ресурса, который является копией общего ресурса только для чтения. Попытка выполнить эту операцию на моментальном снимке общего ресурса завершится ошибкой 400 (InvalidQueryParameterValue)