Určení hlavičky rozsahu pro FileREST

Některé operace FileREST GET podporují použití standardní hlavičky HTTP Range . Mnoho klientů HTTP, včetně klientské knihovny .NET, omezuje velikost Range hlavičky na 32bitové celé číslo, a proto je její hodnota omezena na maximálně 4 GiB. Vzhledem k tomu, že soubory můžou být větší než 4 GiB, Azure Files přijímá vlastní hlavičku x-ms-range rozsahu pro jakoukoli operaci, která přijímá hlavičku HTTPRange.

Někteří klienti HTTP, včetně knihovny Microsoft Silverlight, omezují přístup k Range hlavičce úplně. Hlavičku x-ms-range lze použít také k obcházení těchto omezení.

Pokud je hlavička x-ms-range zadána v požadavku, pak služba použije rozsah určený pomocí x-ms-range. V opačném případě se použije rozsah určený hlavičkou Range .

Formáty záhlaví rozsahu

Azure Files přijímá dvě oblasti bajtů pro Range záhlaví ax-ms-range. Rozsah bajtů musí splňovat některý z následujících formátů záhlaví:

  • bytes=startByte-
  • bytes=startByte-endByte

Formát 1: bytes=startByte-

Tento rozsah vrátí bajty od posunu startByte do konce souboru. Pokud například chcete zadat oblast zahrnující všechny bajty za prvními 256 bajty souboru, můžete předat některou z následujících hlaviček:

  • Range: bytes=255-
  • x-ms-range: bytes=255-

Záhlaví Content-Length v odpovědi se rovná počtu bajtů od posunu do konce souboru. Použití výše uvedené ukázkové oblasti pro soubor o délce Content-Length 1 024 bajtů by bylo 756.

Pokud je posun platný a nepřekračuje celkovou délku souboru, požadavek vrátí stavový kód 206 (Částečný obsah). Pokud je posun neplatný a překročí celkovou délku souboru, požadavek vrátí stavový kód 416 (Požadovaný rozsah není uspokojivý).

Formát 2: bytes=startByte-endByte

Tento rozsah vrátí bajty od posunu startByte do endByte. Pokud například chcete zadat oblast zahrnující prvních 512 bajtů souboru, předali byste některou z následujících hlaviček:

  • Range: bytes=0-511

  • x-ms-range: bytes=0-511

Záhlaví Content-Length odpovědi se rovná počtu bajtů mezi jednotlivými posuny. Použití výše uvedené ukázkové oblasti pro soubor o délce Content-Length 1 024 bajtů by bylo 512.

Pokud je posun platný a nepřekračuje celkovou délku souboru, požadavek vrátí stavový kód 206 (Částečný obsah). Pokud je posun neplatný a překročí celkovou délku souboru, požadavek vrátí stavový kód 416 (Požadovaný rozsah není uspokojivý).

Viz také

Azure Files Koncepty