Sdílet prostřednictvím


Zadat rozsah z adresy URL

Operace Put Range From URL vytvoří nový rozsah, který se potvrdí jako součást souboru, ve kterém se obsah načítá z adresy URL. Toto rozhraní API je k dispozici od verze 2019-02-02.2019.

Dostupnost protokolu

Povolený protokol sdílených složek K dispozici.
SMB Ano
NFS No

Žádost

Požadavek Put Range From URL může být vytvořen následujícím způsobem. Doporučujeme použít https. Nahraďte myaccount názvem vašeho účtu úložiště:

Metoda Identifikátor URI žádosti Verze PROTOKOLU HTTP
PUT https://myaccount.file.core.windows.net/myshare/myfile?comp=range HTTP/1.1

Parametry identifikátoru URI

Parametr Popis
timeout Nepovinný parametr. Parametr timeout je vyjádřen v sekundách. Další informace najdete v tématu Nastavení časových limitů pro operace Azure Files.

Hlavičky požadavku

Požadované a volitelné hlavičky požadavků jsou popsané v následující tabulce:

Hlavička požadavku Popis
Authorization Povinná hodnota. Určuje schéma autorizace, název účtu a podpis. Další informace najdete v tématu Autorizace žádostí do služby Azure Storage .
Date nebo x-ms-date Povinná hodnota. Určuje formát UTC (Coordinated Universal Time). Další informace najdete v tématu Autorizace požadavků do služby Azure Storage.
x-ms-version Povinné pro všechny autorizované žádosti. Určuje verzi operace, která se má použít pro tento požadavek. Další informace najdete v tématu Správa verzí pro služby Azure Storage. Pro Put Range From URLmusí být verze 2019-02-02 nebo novější.
x-ms-copy-source:name Povinná hodnota. Určuje adresu URL zdrojového souboru. Hodnota může být adresa URL o délce až 2 KiB, která určuje soubor. Hodnota by měla být zakódovaná jako v identifikátoru URI požadavku. Zdrojový soubor musí být buď veřejný, nebo musí být autorizovaný prostřednictvím sdíleného přístupového podpisu. Pokud je zdrojový soubor veřejný, nevyžaduje se k provedení operace žádná autorizace. Tady je několik příkladů adres URL zdrojových objektů:
  • 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> Nepovinný parametr. Určuje schéma autorizace a podpis pro zdroj kopírování. Další informace najdete v tématu Autorizace požadavků do služby Azure Storage.
Pro Microsoft Entra je podporován pouze nosič schématu.
Tato hlavička je podporovaná ve verzi 2020-10-02 a novější.
x-ms-write: { update } Povinná hodnota. Je nutné zadat pouze update. Požadavek selže, pokud je volána pomocí clearpříkazu . Hodnota update zapisuje bajty určené tělem požadavku do zadaných rozsahů.
Range nebo x-ms-range Povinná hodnota. Je vyžadováno buď nebo Rangex-ms-range .

Určuje rozsah bajtů, které se mají zapsat. Musí být zadán začátek i konec rozsahu. Tato hlavička je definována specifikací protokolu HTTP/1.1.

V případě operace aktualizace může mít rozsah velikost až 4 MiB.

Azure Files přijímá pouze jeden bajtový rozsah pro Range hlavičky a x-ms-range a oblast bajtů musí být zadána v následujícím formátu: bytes=startByte-endByte.

Pokud jsou zadány obě Rangex-ms-range a, služba použije hodnotu x-ms-range. Další informace najdete v tématu Určení záhlaví rozsahu pro operace Azure Files.
x-ms-source-range Povinná hodnota. Určuje rozsah bajtů, které se mají číst ze zdroje. Musí být zadán začátek i konec rozsahu.

Azure Files přijímá pouze jeden bajtový rozsah pro Range hlavičky a x-ms-range a oblast bajtů musí být zadána v následujícím formátu: bytes=startByte-endByte.

Rozsah zdroje může mít velikost až 4 MiB. Pokud velikost zdrojového rozsahu přesahuje 4 MiB, vrátí Azure Files stavový kód 413 (příliš velká entita požadavku). Pokud velikost zdrojového rozsahu neodpovídá velikosti rozsahu (cílového rozsahu), vrátí služba stavový kód 400 (Chybný požadavek).
Content-Length Povinná hodnota. Určuje počet bajtů přenášených v textu požadavku. Hodnota této hlavičky musí být nastavená na 0hodnotu . Pokud délka není 0, operace selže se stavovým kódem 400 (chybný požadavek).
x-ms-client-request-id Nepovinný parametr. Poskytuje klientem vygenerovanou neprůselnou hodnotu s limitem počtu znaků 1 kibibajt (KiB), který je zaznamenán v protokolech při konfiguraci protokolování. Důrazně doporučujeme použít tuto hlavičku ke korelaci aktivit na straně klienta s požadavky, které server přijímá. Další informace najdete v tématu Monitorování Azure Files.
x-ms-source-content-crc64 Nepovinný parametr. Hodnota hash CRC64 zadaného rozsahu z identifikátoru URI. Tato hodnota hash se používá k ověření integrity rozsahu během přenosu dat z identifikátoru URI. Když je tato hlavička zadána, Azure Files porovná hodnotu hash obsahu, který přišel z copy-source, s touto hodnotou hlavičky.

Poznámka: Tato hodnota hash CRC64 se se souborem neukládá.

Pokud se tyto dvě hodnoty hash neshodnou, operace selže s kódem chyby 400 (Chybný požadavek).
x-ms-source-if-match-crc64 Nepovinný parametr. Hodnota kontrolního součtu CRC64. Tuto hlavičku zadejte, aby se operace prováděla pouze v případě, že kontrolní součet daného rozsahu přečtený ze zdroje odpovídá zadanému kontrolnímu součtu.

Pokud zadaná podmínka není splněná, vrátí Azure Files stavový kód 412 (Předběžná podmínka se nezdařila).
x-ms-source-if-none-match-crc64 Nepovinný parametr. Hodnota kontrolního součtu CRC64. Tuto hlavičku zadejte pro provedení operace pouze v případě, že se kontrolní součet daného rozsahu přečteného ze zdroje liší od zadaného kontrolního součtu.

Pokud zadaná podmínka není splněná, vrátí Azure Files stavový kód 412 (Předběžná podmínka se nezdařila).
x-ms-lease-id:<ID> Vyžaduje se, pokud má soubor aktivní zapůjčení. Chcete-li provést tuto operaci se souborem s aktivním zapůjčením, zadejte platné ID zapůjčení pro tuto hlavičku.
x-ms-client-request-id Nepovinný parametr. Poskytuje klientem vygenerovanou neprůselnou hodnotu s limitem počtu znaků 1 kibibajt (KiB), který se zaznamená do analytických protokolů, když je povolené protokolování Azure Analýza úložiště. Tuto hlavičku důrazně doporučujeme použít při korelaci aktivit na straně klienta s požadavky přijatými serverem. Další informace najdete v tématu Monitorování služby Blob Storage.
x-ms-file-last-write-time: { now ¦ preserve } Nepovinný parametr. Verze 2021-06-08 a novější. Můžete zadat jednu z následujících možností:
  • now: Výchozí hodnota. Aktualizace čas posledního zápisu k času požadavku.
  • preserve: Zachová stávající časové razítko posledního zápisu beze změny.
x-ms-file-request-intent Vyžaduje se, pokud Authorization hlavička určuje token OAuth. Přijatelná hodnota je backup. Tato hlavička určuje, že Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action by se měly udělit nebo Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action , pokud jsou zahrnuté v zásadách RBAC přiřazené identitě, která je autorizována pomocí hlavičky Authorization . K dispozici pro verzi 2022-11-02 a novější.
x-ms-allow-trailing-dot: { <Boolean> } Nepovinný parametr. Verze 2022-11-02 a novější. Logická hodnota určuje, jestli se má koncový tečka v adrese URL požadavku oříznout, nebo ne. Další informace najdete v tématu Pojmenování sdílených složek, adresářů, souborů a metadat a odkazování na nich.
x-ms-source-allow-trailing-dot: { <Boolean> } Nepovinný parametr. Verze 2022-11-02 a novější. Logická hodnota určuje, jestli má být koncový tečka obsažená ve zdrojové adrese URL oříznutá, nebo ne. Tato hlavička by měla být zadána pouze v případě, že zdrojem kopírování je soubor Azure. Tato hlavička není podporována pro žádný jiný typ zdroje kopírování. Další informace najdete v tématu Pojmenování sdílených složek, adresářů, souborů a metadat a odkazování na nich.

Text požadavku

Žádný text požadavku.

Ukázkový požadavek

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 

Odpověď

Odpověď obsahuje stavový kód HTTP a sadu hlaviček odpovědi.

Stavový kód

Úspěšná operace vrátí stavový kód 201 (Vytvořeno).

Další informace o stavových kódech najdete v tématu Kódy stavu a chyb.

Hlavičky odpovědi

Odpověď na tuto operaci obsahuje následující hlavičky. Odpověď může také obsahovat další standardní hlavičky HTTP. Všechny standardní hlavičky odpovídají specifikaci protokolu HTTP/1.1.

Hlavička odpovědi Description
ETag Obsahuje hodnotu, kterou můžete použít k podmíněnému provádění operací. Hodnota je uzavřena v uvozovkách.
Last-Modified Datum a čas poslední změny souboru. Formát data odpovídá dokumentu RFC 1123. Další informace najdete v tématu Znázornění hodnot data a času v záhlavích.

Všechny operace zápisu do souboru, včetně aktualizací metadat nebo vlastností souboru, změní čas poslední změny souboru. 
x-ms-request-id Jednoznačně identifikuje požadavek, který byl proveden, a můžete ho použít k řešení potíží s požadavkem. Další informace najdete v tématu Řešení potíží s operacemi rozhraní API.
x-ms-version Označuje verzi rozhraní FileREST API, která se použila ke spuštění požadavku.
Date Hodnota data a času UTC vygenerovaná službou, která označuje čas, kdy byla odpověď inicializována.
x-ms-content-crc64 Vráceno, aby klient mohl zkontrolovat integritu obsahu zprávy. Hodnota této hlavičky se vypočítá pomocí Azure Files. Nemusí být nutně stejná jako hodnota zadaná v hlavičce požadavku.
x-ms-client-request-id Dá se použít k řešení potíží s požadavky a odpovídajícími odpověďmi. Hodnota této hlavičky se rovná hodnotě x-ms-client-request-id hlavičky, pokud se nachází v požadavku, a hodnota obsahuje maximálně 1 024 viditelných znaků ASCII. Pokud se hlavička x-ms-client-request-id v požadavku nenachází, v odpovědi se nezobrazí.
x-ms-file-last-write-time Verze 2021-06-08 a novější. Čas posledního zápisu souboru ve formátu ISO 8601 (například 2017-05-10T17:52:33.9551861Z).

Ukázková odpověď

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  

Autorizace

Tuto operaci může volat vlastník účtu a kdokoli se sdíleným přístupovým podpisem, který má oprávnění k zápisu do tohoto souboru nebo sdílené složky Azure.

Poznámky

Operace Put Range From URL zapíše oblast dat do souboru. Pokud se rozhraní API volá na neexistující soubor v cíli, vrátí rozhraní API stavový kód HTTP 404 (Nenalezena).

Ve verzi 2020-10-02 a novější se pro zdroj operace kopírování podporuje autorizace Microsoft Entra.

Pokud chcete vytvořit nový soubor, zavolejte Create File.

Put Range From URL Operace vrátí úspěch 201 (vytvořeno) pouze v případě, že je zadaný rozsah zapsán do souboru.

Operace čtení souborů
Put Range From URL používá Get File ke čtení dat a metadat, atributů a seznamů ACL ze zdroje.

Operace aktualizace souboru
Volání Put Range From URL s možností "update" provede místní zápis do zadaného souboru. Veškerý obsah v zadaném souboru se přepíše aktualizací.  

Velikost rozsahu Put Range From URL v operaci aktualizace může být až 4 MiB. Pokud se pokusíte nahrát rozsah větší než 4 MiB, vrátí Azure Files stavový kód 413 (RequestEntityTooLarge).