다음을 통해 공유


URL에서 범위 배치

작업은 Put Range From URL URL에서 내용을 읽는 파일의 일부로 커밋할 새 범위를 만듭니다. 이 API는 버전 2019-02-02를 기준으로 사용할 수 있습니다.

프로토콜 가용성

파일 공유 프로토콜 사용 사용 가능
SMB Yes
NFS 아니요

요청

다음과 같이 Put Range From URL 요청을 생성할 수 있습니다. HTTPS를 사용하는 것이 좋습니다. myaccount를 스토리지 계정의 이름으로 바꿉니다.

메서드 요청 URI HTTP 버전
PUT https://myaccount.file.core.windows.net/myshare/myfile?comp=range HTTP/1.1

URI 매개 변수

매개 변수 Description
timeout 선택 사항입니다. timeout 매개 변수는 초 단위로 표시됩니다. 자세한 내용은 Azure Files 작업에 대한 시간 제한 설정을 참조하세요.

요청 헤더

필수 및 선택적 요청 헤더는 다음 표에 설명되어 있습니다.

요청 헤더 Description
Authorization 필수 사항입니다. 권한 부여 체계, 계정 이름 및 서명을 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여 를 참조하세요.
Date 또는 x-ms-date 필수 사항입니다. 요청에 대한 UTC(협정 세계시)를 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
x-ms-version 모든 권한 있는 요청에 필요합니다. 이 요청에 사용할 작업의 버전을 지정합니다. 자세한 내용은 Azure Storage 서비스에 대한 버전 관리를 참조하세요. 의 경우 Put Range From URL버전은 2019-02-02 이상이어야 합니다.
x-ms-copy-source:name 필수 사항입니다. 원본 파일의 URL을 지정합니다. 값은 파일을 지정하는 길이가 최대 2KiB인 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 Storage에 대한 요청 권한 부여를 참조하세요.
스키마 전달자만 Microsoft Entra 지원됩니다.
이 헤더는 버전 2020-10-02 이상에서 지원됩니다.
x-ms-write: { update } 필수 사항입니다. 만 update지정해야 합니다. 를 사용하여 clear호출되면 요청이 실패합니다. 값은 update 요청 본문에 지정된 바이트를 지정된 범위에 씁니다.
Range 또는 x-ms-range 필수 사항입니다. Range 또는 x-ms-range가 필요합니다.

쓸 바이트 범위를 지정합니다. 시작 및 끝 범위를 모두 지정해야 합니다. 이 헤더는 HTTP/1.1 프로토콜 사양에 의해 정의됩니다.

업데이트 작업의 경우 범위 크기는 최대 4MiB일 수 있습니다.

Azure Files 및 x-ms-range 헤더에 대해 Range 단일 바이트 범위만 허용하며 바이트 범위는 형식bytes=startByte-endByte으로 지정해야 합니다.

Rangex-ms-range가 모두 지정된 경우 서비스에서 x-ms-range의 값이 사용됩니다. 자세한 내용은 Azure Files 작업에 대한 범위 헤더 지정을 참조하세요.
x-ms-source-range 필수 사항입니다. 원본에서 읽을 바이트 범위를 지정합니다. 시작 및 끝 범위를 모두 지정해야 합니다.

Azure Files 및 x-ms-range 헤더에 대해 Range 단일 바이트 범위만 허용하며 바이트 범위는 형식bytes=startByte-endByte으로 지정해야 합니다.

원본 범위의 크기는 최대 4MiB일 수 있습니다. 원본 범위 크기가 4MiB를 초과하면 Azure Files 상태 코드 413(요청 엔터티가 너무 큼)을 반환합니다. 원본 범위 크기가 범위(대상 범위) 크기와 일치하지 않으면 서비스는 상태 코드 400(잘못된 요청)을 반환합니다.
Content-Length 필수 사항입니다. 요청 본문에 전송 중인 바이트 수를 지정합니다. 이 헤더의 값은 0로 설정되어야 합니다. 길이가 이 아닌 0경우 상태 코드 400(잘못된 요청)으로 인해 작업이 실패합니다.
x-ms-client-request-id 선택 사항입니다. 로깅이 구성될 때 로그에 기록되는 1키비바이트(KiB) 문자 제한으로 클라이언트에서 생성된 불투명 값을 제공합니다. 이 헤더를 사용하여 클라이언트 쪽 활동과 서버가 수신하는 요청의 상관 관계를 지정하는 것이 좋습니다. 자세한 내용은 Azure Files 모니터링을 참조하세요.
x-ms-source-content-crc64 선택 사항입니다. URI에서 지정된 범위의 CRC64 해시입니다. 이 해시는 URI에서 데이터를 전송하는 동안 범위의 무결성을 확인하는 데 사용됩니다. 이 헤더를 지정하면 Azure Files 복사 소스에서 도착한 콘텐츠의 해시를 이 헤더 값과 비교합니다.

참고: 이 CRC64 해시는 파일과 함께 저장되지 않습니다.

두 해시가 일치하지 않으면 작업이 실패하고 오류 코드 400(잘못된 요청)이 표시됩니다.
x-ms-source-if-match-crc64 선택 사항입니다. CRC64 체크섬 값입니다. 원본에서 읽은 지정된 범위의 체크섬이 제공된 체크섬과 일치하는 경우에만 이 헤더를 지정하여 작업을 수행합니다.

지정된 조건이 충족되지 않으면 Azure Files 상태 코드 412(사전 조건 실패)를 반환합니다.
x-ms-source-if-none-match-crc64 선택 사항입니다. CRC64 체크섬 값입니다. 원본에서 읽은 지정된 범위의 체크섬이 제공된 체크섬과 다른 경우에만 이 헤더를 지정하여 작업을 수행합니다.

지정된 조건이 충족되지 않으면 Azure Files 상태 코드 412(사전 조건 실패)를 반환합니다.
x-ms-lease-id:<ID> 파일에 활성 임대가 있는 경우 필요합니다. 활성 임대가 있는 파일에서 이 작업을 수행하려면 이 헤더에 유효한 임대 ID를 지정합니다.
x-ms-client-request-id 선택 사항입니다. Azure 스토리지 분석 로깅을 사용하도록 설정할 때 분석 로그에 기록되는 1키비바이트(KiB) 문자 제한으로 클라이언트에서 생성된 불투명 값을 제공합니다. 클라이언트 쪽 활동과 서버에서 수신한 요청의 상관 관계를 지정할 때 이 헤더를 사용하는 것이 좋습니다. 자세한 내용은 Blob Storage 모니터링을 참조하세요.
x-ms-file-last-write-time: { now ¦ preserve } 선택 사항입니다. 버전 2021-06-08 이상. 다음 옵션 중 하나를 지정할 수 있습니다.
  • now: 기본값입니다. 마지막 쓰기 시간 타임스탬프를 요청 시간으로 업데이트.
  • preserve: 기존 마지막 쓰기 타임스탬프를 변경하지 않고 유지합니다.
x-ms-file-request-intent 헤더가 OAuth 토큰을 지정하는 경우 Authorization 필요합니다. 허용되는 값은 입니다 backup. 이 헤더는 헤더를 Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action 사용하여 Authorization 권한이 부여된 ID에 할당된 RBAC 정책에 포함되는 경우 또는 Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action 를 부여하도록 지정합니다. 버전 2022-11-02 이상에 사용할 수 있습니다.
x-ms-allow-trailing-dot: { <Boolean> } 선택 사항입니다. 버전 2022-11-02 이상. 부울 값은 요청 URL에 있는 후행 점을 잘라내야 하는지 여부를 지정합니다. 자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 이름 지정 및 참조를 참조하세요.
x-ms-source-allow-trailing-dot: { <Boolean> } 선택 사항입니다. 버전 2022-11-02 이상. 부울 값은 원본 URL에 있는 후행 점을 잘라내야 하는지 여부를 지정합니다. 이 헤더는 복사 원본이 Azure File인 경우에만 지정해야 합니다. 이 헤더는 다른 복사 원본 형식에 대해 지원되지 않습니다. 자세한 내용은 공유, 디렉터리, 파일 및 메타데이터 이름 지정 및 참조를 참조하세요.

요청 본문

요청 본문이 없습니다.

샘플 요청

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 프로토콜 사양을 준수합니다.

응답 헤더 Description
ETag 조건부로 작업을 수행하는 데 사용할 수 있는 값을 포함합니다. 값은 따옴표로 묶입니다.
Last-Modified 파일이 마지막으로 수정된 날짜 및 시간입니다. 날짜 형식은 RFC 1123을 따릅니다. 자세한 내용은 헤더의 날짜/시간 값 표현을 참조하세요.

파일의 메타데이터 또는 속성 업데이트를 포함하여 파일에 대한 쓰기 작업은 파일의 마지막 수정 시간을 변경합니다. 
x-ms-request-id 만들어진 요청을 고유하게 식별하며 이를 사용하여 요청 문제를 해결할 수 있습니다. 자세한 내용은 API 작업 문제 해결을 참조하세요.
x-ms-version 요청을 실행하는 데 사용된 FileREST API 버전을 나타냅니다.
Date 서비스에서 생성된 UTC 날짜/시간 값으로, 응답이 시작된 시간을 나타냅니다.
x-ms-content-crc64 클라이언트가 메시지 콘텐츠 무결성을 검사 수 있도록 반환됩니다. 이 헤더의 값은 Azure Files 계산됩니다. 반드시 요청 헤더에 지정된 값과 동일하지는 않습니다.
x-ms-client-request-id 요청 및 해당 응답 문제를 해결하는 데 사용할 수 있습니다. 이 헤더의 값 x-ms-client-request-id 은 요청에 있고 값에 표시되는 ASCII 문자가 1,024자 이하인 경우 헤더 값과 같습니다. 헤더가 x-ms-client-request-id 요청에 없으면 응답에 표시되지 않습니다.
x-ms-file-last-write-time 버전 2021-06-08 이상. ISO 8601 형식(예 2017-05-10T17:52:33.9551861Z: )으로 파일에 대한 마지막 쓰기 시간입니다.

샘플 응답

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  

권한 부여

이 작업은 계정 소유자와 이 파일 또는 Azure 파일 공유에 쓸 수 있는 권한이 있는 공유 액세스 서명이 있는 모든 사용자가 호출할 수 있습니다.

설명

작업은 Put Range From URL 파일에 데이터 범위를 씁니다. 대상의 존재하지 않는 파일에서 API가 호출되면 API는 HTTP 상태 코드 404(찾을 수 없음)를 반환합니다.

버전 2020-10-02 이상에서는 복사 작업의 원본에 대해 Microsoft Entra 권한 부여가 지원됩니다.

새 파일을 만들려면 Create File을 호출합니다.

Put Range From URL 작업은 지정된 범위가 파일에 기록된 경우에만 성공 201(생성됨)을 반환합니다.

파일 읽기 작업
Put Range From URL 는 를 사용하여 Get File 원본에서 데이터 및 메타데이터, 특성 및 ACL을 읽습니다.

파일 업데이트 작업
"update" 옵션을 사용하여 를 호출 Put Range From URL 하면 지정된 파일에 대한 현재 위치 쓰기가 수행됩니다. 지정된 파일의 모든 콘텐츠를 업데이트로 덮어씁니다.  

업데이트 작업에 대한 작업의 범위 크기 Put Range From URL 는 최대 4MiB 크기일 수 있습니다. 4MiB보다 큰 범위를 업로드하려고 하면 Azure Files 상태 코드 413(RequestEntityTooLarge)을 반환합니다.