Поделиться через


Поместите диапазон из URL-адреса

Операция Put Range From URL создает новый диапазон для фиксации в составе файла, в котором содержимое считывается из URL-адреса. Эта операция поддерживается в версии 2019-02-02-02 и более поздних версиях с включенным протоколом SMB и поддерживается в версии 2025-05-05 и более поздних версий для общих папок с включенным протоколом NFS.

Доступность протокола

Протокол общей папки с включенным доступом Доступный
SMB Да
NFS Да

Просьба

Запрос Put Range From URL создается следующим образом. Рекомендуется использовать ПРОТОКОЛ HTTPS.

Метод URI запроса ВЕРСИЯ HTTP
КЛАСТЬ https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?comp=range HTTP/1.1

Замените компоненты пути, отображаемые в URI запроса собственным, следующим образом:

Компонент path Описание
myaccount Имя учетной записи хранения.
myshare Имя общей папки.
mydirectorypath Необязательный. Путь к родительскому каталогу.
myfile Имя файла.

Сведения об ограничениях именования путей см. в разделе Имя и справочные ресурсы, каталоги, файлы и метаданные.

Параметры URI

Параметр Описание
timeout Необязательный. Параметр timeout выражается в секундах. Дополнительные сведения см. в статье Настройка времени ожидания операций службы "Файлы Azure".

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

Обязательные и необязательные заголовки запросов описаны в следующих таблицах:

Общие заголовки запросов

Заголовок запроса Описание
Authorization Обязательно. Указывает схему авторизации, имя учетной записи и подпись. Дополнительные сведения см. в авторизации запросов к службе хранилища Azure.
Date или x-ms-date Обязательно. Указывает универсальное время (UTC) для запроса. Дополнительные сведения см. в статье Авторизация запросов к службе хранилища Azure.
x-ms-version Требуется для всех авторизованных запросов. Указывает версию операции, используемой для этого запроса. Эта операция поддерживается в версии 2019-02-02-02 и более поздних версиях с включенным протоколом SMB и поддерживается в версии 2025-05-05 и более поздних версий для общих папок с включенным протоколом NFS.

Дополнительные сведения см. в разделе Управление версиями служб хранилища Azure.
x-ms-copy-source:name Обязательно. Указывает URL-адрес исходного файла. Значение может быть URL-адресом до 2 КИБ в длину, указывающее файл. Значение должно быть закодировано URL-адресом, так как оно будет отображаться в URI запроса. Исходный файл должен быть общедоступным или должен быть авторизован через подписанный URL-адрес. Если исходный файл является общедоступным, для выполнения операции не требуется авторизация. Ниже приведены некоторые примеры URL-адресов исходного объекта:
  • https://myaccount.file.core.windows.net/myshare/mydir/myfile
  • https://myaccount.file.core.windows.net/myshare/mydir/myfile?<sastoken>
x-ms-copy-source-authorization: <scheme> <signature> Необязательный. Указывает схему авторизации и подпись источника копирования. Дополнительные сведения см. в статье Авторизация запросов к службе хранилища Azure.
Для Microsoft Entra поддерживается только носитель схемы.
Этот заголовок поддерживается в версии 2020-10-02 и более поздних версиях.
x-ms-write: { update } Обязательно. Необходимо указать только update. Запрос завершается ошибкой, если он вызывается с помощью clear. Значение update записывает байты, указанные текстом запроса, в указанные диапазоны.
Range или x-ms-range Обязательно. Требуется Range или x-ms-range.

Указывает диапазон записываемых байтов. Необходимо указать начало и конец диапазона. Этот заголовок определяется спецификацией протокола HTTP/1.1 .

Для операции обновления диапазон может быть размером до 4 МиБ.

Файлы Azure принимают только один диапазон байтов для заголовков Range и x-ms-range, а диапазон байтов должен быть указан в следующем формате: bytes=startByte-endByte.

Если указаны оба Range и x-ms-range, служба использует значение x-ms-range. Дополнительные сведения см. в статье Указание заголовка диапазона для операций с файлами Azure.
x-ms-source-range Обязательно. Указывает диапазон байтов для чтения из источника. Необходимо указать начало и конец диапазона.

Файлы Azure принимают только один диапазон байтов для заголовков Range и x-ms-range, а диапазон байтов должен быть указан в следующем формате: bytes=startByte-endByte.

Исходный диапазон может быть размером до 4 МиБ. Если размер исходного диапазона превышает 4 МиБ, файлы Azure возвращают код состояния 413 (слишком большая сущность запроса). Если размер исходного диапазона не соответствует размеру диапазона (целевого диапазона), служба возвращает код состояния 400 (недопустимый запрос).
Content-Length Обязательно. Указывает количество байтов, передаваемых в тексте запроса. Значение этого заголовка должно иметь значение 0. Если длина не 0, операция завершается ошибкой с кодом состояния 400 (недопустимый запрос).
x-ms-client-request-id Необязательный. Предоставляет созданное клиентом непрозрачное значение с ограничением символов 1-kibibyte (KiB), записанным в журналах при настройке ведения журнала. Настоятельно рекомендуется использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в статье Monitor Azure Files.
x-ms-source-content-crc64 Необязательный. Хэш CRC64 указанного диапазона от URI. Этот хэш используется для проверки целостности диапазона во время передачи данных из URI. При указании этого заголовка Файлы Azure сравнивают хэш содержимого, полученного из источника копирования, с этим значением заголовка.

примечание: этот хэш CRC64 не хранится в файле.

Если два хэша не соответствуют, операция завершается ошибкой с кодом 400 (недопустимый запрос).
x-ms-source-if-match-crc64 Необязательный. Значение контрольной суммы CRC64. Укажите этот заголовок для выполнения операции, только если контрольная сумма заданного диапазона считывается из исходных совпадений из предоставленной контрольной суммы.

Если указанное условие не выполнено, служба "Файлы Azure" возвращает код состояния 412 (сбой предварительных условий).
x-ms-source-if-none-match-crc64 Необязательный. Значение контрольной суммы CRC64. Укажите этот заголовок для выполнения операции, только если контрольная сумма заданного диапазона, считываемая из источника, отличается от предоставленной контрольной суммы.

Если указанное условие не выполнено, служба "Файлы Azure" возвращает код состояния 412 (сбой предварительных условий).
x-ms-lease-id: <ID> Требуется, если файл имеет активную аренду. Доступно для версии 2019-02-02 и более поздних версий.

Этот заголовок игнорируется, если файл находится в общей папке с включенным протоколом NFS, который не поддерживает аренду файлов.
x-ms-client-request-id Необязательный. Предоставляет созданное клиентом непрозрачное значение с ограничением символов 1-kibibyte (KiB), которое записывается в журналы аналитики при включении ведения журнала аналитики службы хранилища Azure. Настоятельно рекомендуется использовать этот заголовок при сопоставлении действий на стороне клиента с запросами, полученными сервером. Дополнительные сведения см. в разделе Мониторинг хранилища BLOB-объектов.
x-ms-file-last-write-time: { now ¦ preserve } Необязательный. Версия 2021-06-08 и более поздних версий. Можно указать один из следующих вариантов:
  • now: значение по умолчанию. Обновляет метку времени последней записи до времени запроса.
  • preserve: сохраняет существующую метку времени последней записи без изменений.
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-адресе запроса.

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

Дополнительные сведения см. в разделе Именование и ссылки на общие папки, каталоги, файлы и метаданные.
x-ms-source-allow-trailing-dot: { <Boolean> } Необязательный. Версия 2022-11-02 и более поздних версий. Логическое значение указывает, следует ли обрезать конечную точку в исходном URL-адресе. Этот заголовок следует указать, только если источник копирования находится в общей папке Azure. Этот заголовок не поддерживается для любого другого типа источника копирования.

Этот заголовок игнорируется, если источник копирования находится в общей папке с включенным протоколом NFS, который поддерживает конечную точку по умолчанию.

Дополнительные сведения см. в разделе Именование и ссылки на общие папки, каталоги, файлы и метаданные.

Только заголовки запросов SMB

Никакой.

Только заголовки запросов NFS

Никакой.

Текст запроса

Текст запроса не указан.

Пример запроса

Request Syntax:  
PUT https://myaccount.file.core.windows.net/myshare/mydir/myfile?comp=range HTTP/1.1  
  
Request Headers:  
x-ms-page-write: update  
x-ms-copy-source: http://myaccount2.file.core.windows.net/myshare2/mydirectory2/myfile2?sv=2018-11-09&sp=r&sr=s&se=2018-08-22T09%3A59%3A28.2185790Z&sig=Qn6QEET3Gn%2FhCEVcXuwG7ssatIYiYRM5pNIy4Q3N0cQ%3D 
x-ms-date: Fri, 22 Aug 2018 01:15:50 GMT  
x-ms-version: 2019-02-02 
x-ms-range: bytes=100-1023  
x-ms-source-range: bytes=200-1123  
x-ms-source-content-crc64: 3bedb8b3730fc205 
Authorization: SharedKey myaccount:4KdWDiTdA9HmIF9+WF/8WfYOpUrFhieGIT7f0av+GEI=  
Content-Length: 0 

Ответ

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

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

Успешная операция возвращает код состояния 201 (создан). Дополнительные сведения о кодах состояния см. в коды состояния и коды ошибок.

Заголовки ответа

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

Общие заголовки ответов

Заголовок ответа Описание
ETag Содержит значение, которое можно использовать для условного выполнения операций. Значение заключено в кавычки.
Last-Modified Дата и время последнего изменения файла. Формат даты следует RFC 1123. Дополнительные сведения см. в представлении значений даты и времени в заголовках.

Любая операция записи в файле, включая обновления метаданных или свойств файла, изменяет время последнего изменения файла. 
x-ms-request-id Уникально идентифицирует выполненный запрос, и его можно использовать для устранения неполадок запроса. Дополнительные сведения см. в статье Устранение неполадок с операциями API.
x-ms-version Указывает версию API FileREST, которая использовалась для выполнения запроса.
Date Значение даты и времени в формате UTC, созданное службой, указывающее время, когда был инициирован ответ.
x-ms-content-crc64 Возвращается, чтобы клиент смог проверить целостность содержимого сообщения. Значение этого заголовка вычисляется службами Файлов Azure. Это не обязательно совпадает со значением, указанным в заголовках запроса.
x-ms-client-request-id Можно использовать для устранения неполадок запросов и соответствующих ответов. Значение этого заголовка равно значению заголовка x-ms-client-request-id, если оно присутствует в запросе, а значение содержит не более 1024 видимых символов ASCII. Если в запросе отсутствует заголовок x-ms-client-request-id, он не будет присутствовать в ответе.
x-ms-file-last-write-time Версия 2021-06-08 и более поздних версий. Время последней записи файла в формате ISO 8601 (например, 2017-05-10T17:52:33.9551861Z).

Заголовки ответов SMB только

Никакой.

Заголовки ответов NFS только

Никакой.

Текст ответа

Никакой.

Пример ответа

Response Status:  
HTTP/1.1 201 Created  

Response Headers:
Date: Sun, 22 Aug 2020 01:33:35 GMT  
ETag: "0x8CB171BA9E94B0B"  
Last-Modified: Wed, 22 Aug 2020 01:13:31 GMT  
x-ms-version: 2019-02-02
x-ms-content-crc64: 3bedb8b3730fc205 
Content-Length: 0  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  

Авторизация

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

Замечания

Операция Put Range From URL записывает в файл диапазон данных и аналогична поведению операции Put Range. Она использует операцию Get File в указанном источнике для чтения данных, метаданных и других свойств исходного файла. В версии 2020-10-02 и более поздних версиях авторизация Microsoft Entra поддерживается для источника операции копирования.

Операция Put Range From URL возвращает успешное выполнение 201 (создано), только если указанный диапазон записывается в файл.

См. также

операции с файлами