Hämta blockeringslista
Åtgärden Get Block List
hämtar listan över block som har laddats upp som en del av en blockblob.
Det finns två blocklister för en blob:
Bekräftad blockeringslista: Listan över block som har checkats in till en angiven blob med hjälp av Placera blockeringslista.
Ogenomförd blockeringslista: Listan över block som har laddats upp för en blob med hjälp av Placera blockering, men som ännu inte har checkats in. Dessa block lagras i Azure i samband med en blob, men utgör ännu inte en del av bloben.
Du kan anropa Get Block List
för att returnera den bekräftade blockeringslistan, den ogenomförda blockeringslistan eller båda listorna. Du kan också anropa den här åtgärden för att hämta den bekräftade blockeringslistan för en ögonblicksbild.
Förfrågan
Begäran Get Block List
kan konstrueras på följande sätt. Vi rekommenderar att du använder HTTPS. Ersätt myaccount med namnet på ditt lagringskonto:
URI för GET-metodbegäran | HTTP-version |
---|---|
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=blocklist https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=blocklist&snapshot=<DateTime> https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=blocklist&versionid=<DateTime> |
HTTP/1.1 |
Emulerad lagringstjänstbegäran
När du gör en begäran mot den emulerade lagringstjänsten anger du emulatorns värdnamn och blobtjänstporten som 127.0.0.1:10000
, följt av namnet på det emulerade lagringskontot:
URI för GET-metodbegäran | HTTP-version |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=blocklist |
HTTP/1.1 |
Mer information finns i Använda Azurite-emulatorn för lokal Azure Storage-utveckling.
URI-parametrar
Du kan ange följande ytterligare parametrar på begärande-URI:n:
URI-parameter | Description |
---|---|
snapshot |
Valfritt. Parametern snapshot är ett täckande DateTime värde som när den finns anger den bloblista som ska hämtas. Mer information om hur du arbetar med blobögonblicksbilder finns i Skapa en ögonblicksbild av en blob. |
versionid |
Valfritt för versionerna 2019-12-12 och senare. Parametern versionid är ett täckande DateTime värde som, när den finns, anger vilken version av bloben som ska hämtas. |
blocklisttype |
Anger om du vill returnera listan över bekräftade block, listan över ej bekräftade block eller båda listorna tillsammans. Giltiga värden är committed , uncommitted eller all . Om du utelämnar den här parametern Get Block List returneras listan över bekräftade block. |
timeout |
Valfritt. Parametern timeout uttrycks i sekunder. Mer information finns i Ange tidsgränser för Blob Storage-åtgärder. |
Begärandehuvuden
I följande tabell beskrivs obligatoriska och valfria begärandehuvuden.
Begärandehuvud | Beskrivning |
---|---|
Authorization |
Krävs. Anger auktoriseringsschema, kontonamn och signatur. Mer information finns i Auktorisera begäranden till Azure Storage. |
Date eller x-ms-date |
Krävs. Anger Coordinated Universal Time (UTC) för begäran. Mer information finns i Auktorisera begäranden till Azure Storage. |
x-ms-version |
Krävs för alla auktoriserade begäranden, valfritt för anonyma begäranden. Anger vilken version av åtgärden som ska användas för den här begäran. Mer information finns i Versionshantering för Azure Storage-tjänsterna. |
x-ms-lease-id:<ID> |
Valfritt. Om det här huvudet anges utförs åtgärden endast om båda följande villkor uppfylls: – Blobens lån är för närvarande aktivt. – Låne-ID:t som anges i begäran matchar blobens. Om det här huvudet anges och något av villkoren inte uppfylls misslyckas begäran och åtgärden misslyckas med statuskod 412 (förhandsvillkoret misslyckades). |
x-ms-client-request-id |
Valfritt. Tillhandahåller ett klientgenererat, täckande värde med en teckengräns på 1 kibibyte (KiB) som registreras i loggarna när loggning har konfigurerats. Vi rekommenderar starkt att du använder det här huvudet för att korrelera aktiviteter på klientsidan med begäranden som servern tar emot. Mer information finns i Övervaka Azure Blob Storage. |
Den här åtgärden stöder även användning av villkorsstyrda rubriker för att endast köra åtgärden om ett angivet villkor uppfylls. Mer information finns i Ange villkorsstyrda rubriker för Blob Storage-åtgärder.
Begärandetext
Inga.
Exempelbegäran
Följande exempelbegärande-URI returnerar den bekräftade blockeringslistan för en blob med namnet MOV1.avi:
GET http://myaccount.blob.core.windows.net/movies/MOV1.avi?comp=blocklist&blocklisttype=committed HTTP/1.1
Följande exempelbegärande-URI returnerar både den bekräftade och den ogenomförda blockeringslistan:
GET http://myaccount.blob.core.windows.net/movies/MOV1.avi?comp=blocklist&blocklisttype=all HTTP/1.1
Följande exempelbegärande-URI returnerar den bekräftade blockeringslistan för en ögonblicksbild. En ögonblicksbild består bara av bekräftade block, så det finns inga ogenomförda block som är associerade med den.
GET http://myaccount.blob.core.windows.net/mycontainer/myblob?comp=blocklist&snapshot=2009-09-30T20%3a11%3a15.2735974Z
Svarsåtgärder
Svaret innehåller en HTTP-statuskod, en uppsättning svarshuvuden och en svarstext som innehåller listan över block.
Statuskod
En lyckad åtgärd returnerar statuskod 200 (OK).
Information om statuskoder finns i Status och felkoder.
Svarshuvuden
Svaret för den här åtgärden innehåller följande rubriker. Svaret kan också innehålla ytterligare HTTP-standardhuvuden. Alla standardhuvuden överensstämmer med http/1.1-protokollspecifikationen.
Svarsrubrik | Description |
---|---|
Last-Modified |
Datum/tid då bloben senast ändrades. Datumformatet följer RFC 1123. Mer information finns i Representera datum-/tidsvärden i rubriker. Returneras endast om bloben har checkat in block. Alla åtgärder som ändrar bloben, inklusive uppdateringar av blobens metadata eller egenskaper, ändrar blobens senaste ändringstid. |
ETag |
ETag för bloben. Returneras endast om bloben har checkat in block. |
Content-Type |
MIME-innehållstypen för bloben. Standardvärdet är application/xml . |
x-ms-blob-content-length |
Storleken på bloben i byte. |
x-ms-request-id |
Det här huvudet identifierar unikt den begäran som har gjorts och kan användas för att felsöka begäran. Mer information finns i Felsöka API-åtgärder. |
x-ms-version |
Anger den tjänstversion som användes för att köra begäran. Det här huvudet returneras för begäranden som görs mot version 2009-09-19 och senare. Det här huvudet returneras också för anonyma begäranden utan en angiven version om containern har markerats för offentlig åtkomst med hjälp av Blob Storage version 2009-09-19. Obs! Endast den bekräftade blockeringslistan kan returneras via en anonym begäran. |
Date |
Ett DATUM-/tidsvärde för UTC som genereras av tjänsten, vilket anger den tid då svaret initierades. |
x-ms-client-request-id |
Kan användas för att felsöka begäranden och motsvarande svar. Värdet för det här huvudet är lika med värdet x-ms-client-request-id för rubriken om det finns i begäran och värdet inte innehåller fler än 1 024 synliga ASCII-tecken. Om rubriken x-ms-client-request-id inte finns i begäran finns den inte i svaret. |
Den här åtgärden stöder också användning av villkorsstyrda rubriker för att endast hämta blockeringslistan om ett angivet villkor uppfylls. Mer information finns i Ange villkorsstyrda rubriker för Blob Storage-åtgärder.
Själva svaret
Formatet på svarstexten för en begäran som endast returnerar bekräftade block är följande:
<?xml version="1.0" encoding="utf-8"?>
<BlockList>
<CommittedBlocks>
<Block>
<Name>base64-encoded-block-id</Name>
<Size>size-in-bytes</Size>
</Block>
<CommittedBlocks>
</BlockList>
Formatet på svarstexten för en begäran som returnerar både bekräftade och ogenomförda block är följande:
<?xml version="1.0" encoding="utf-8"?>
<BlockList>
<CommittedBlocks>
<Block>
<Name>base64-encoded-block-id</Name>
<Size>size-in-bytes</Size>
</Block>
</CommittedBlocks>
<UncommittedBlocks>
<Block>
<Name>base64-encoded-block-id</Name>
<Size>size-in-bytes</Size>
</Block>
</UncommittedBlocks>
</BlockList>
Exempelsvar
I följande exempel angavs parametern blocklisttype
till committed
, så endast blobens bekräftade block returneras i svaret.
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/xml
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 42da571d-34f4-4d3e-b53e-59a66cb36f23
Date: Sun, 25 Sep 2011 00:33:19 GMT
<?xml version="1.0" encoding="utf-8"?>
<BlockList>
<CommittedBlocks>
<Block>
<Name>BlockId001</Name>
<Size>4194304</Size>
</Block>
<Block>
<Name>BlockId002</Name>
<Size>4194304</Size>
</Block>
</CommittedBlocks>
</BlockList>
I det här exemplet angavs parametern blocklisttype
till all
, och både blobens bekräftade och ogenomförda block returneras i svaret.
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/xml
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 42da571d-34f4-4d3e-b53e-59a66cb36f23
Date: Sun, 25 Sep 2011 00:35:56 GMT
<?xml version="1.0" encoding="utf-8"?>
<BlockList>
<CommittedBlocks>
<Block>
<Name>BlockId001</Name>
<Size>4194304</Size>
</Block>
<Block>
<Name>BlockId002</Name>
<Size>4194304</Size>
</Block>
</CommittedBlocks>
<UncommittedBlocks>
<Block>
<Name>BlockId003</Name>
<Size>4194304</Size>
</Block>
<Block>
<Name>BlockId004</Name>
<Size>1024000</Size>
</Block>
</UncommittedBlocks>
</BlockList>
I nästa exempel angavs parametern blocklisttype
till all
, men bloben har ännu inte checkats in, så elementet CommittedBlocks
är tomt.
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/xml
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 42da571d-34f4-4d3e-b53e-59a66cb36f23
Date: Wed, 14 Sep 2011 00:40:22 GMT
<?xml version="1.0" encoding="utf-8"?>
<BlockList>
<CommittedBlocks />
<UncommittedBlocks>
<Block>
<Name>BlockId001</Name>
<Size>1024</Size>
</Block>
<Block>
<Name>BlockId002</Name>
<Size>1024</Size>
</Block>
<Block>
<Name>BlockId003</Name>
<Size>1024</Size>
</Block>
<Block>
<Name>BlockId004</Name>
<Size>1024</Size>
</Block>
</UncommittedBlocks>
</BlockList>
Auktorisering
Auktorisering krävs när du anropar en dataåtkomståtgärd i Azure Storage. Du kan auktorisera åtgärden enligt beskrivningen Get Block List
nedan.
Viktigt
Microsoft rekommenderar att du använder Microsoft Entra ID med hanterade identiteter för att auktorisera begäranden till Azure Storage. Microsoft Entra ID ger överlägsen säkerhet och användarvänlighet jämfört med auktorisering med delad nyckel.
Azure Storage stöder användning av Microsoft Entra ID för att auktorisera begäranden till blobdata. Med Microsoft Entra ID kan du använda rollbaserad åtkomstkontroll i Azure (Azure RBAC) för att bevilja behörigheter till ett säkerhetsobjekt. Säkerhetsobjektet kan vara en användare, grupp, programtjänstens huvudnamn eller en hanterad Azure-identitet. Säkerhetsobjektet autentiseras av Microsoft Entra ID för att returnera en OAuth 2.0-token. Token kan sedan användas för att auktorisera en begäran mot Blob-tjänsten.
Mer information om auktorisering med Microsoft Entra ID finns i Auktorisera åtkomst till blobar med hjälp av Microsoft Entra ID.
Behörigheter
Nedan visas den RBAC-åtgärd som krävs för att en Microsoft Entra användare, grupp, hanterad identitet eller tjänstens huvudnamn ska anropa Get Block List
åtgärden och den minst privilegierade inbyggda Azure RBAC-rollen som innehåller den här åtgärden:
- Azure RBAC-åtgärd:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
- Minsta privilegierade inbyggda roll:Storage Blob Data Reader
Mer information om hur du tilldelar roller med hjälp av Azure RBAC finns i Tilldela en Azure-roll för åtkomst till blobdata.
Kommentarer
Anropa Get Block List
för att returnera listan över block som har checkats in till en blockblob, listan över block som ännu inte har checkats in eller båda listorna. Använd parametern blocklisttype
för att ange vilken lista med block som ska returneras. Listan över bekräftade block returneras i samma ordning som de checkades in av åtgärden Placera blockeringslista .
Du kan använda den ogenomförda blockeringslistan för att avgöra vilka block som saknas i bloben i de fall där anrop till Put Block
eller Put Block List
har misslyckats. Listan över ogenomförda block returneras i alfabetisk ordning. Om ett block-ID har laddats upp mer än en gång visas endast det senast uppladdade blocket i listan.
Anteckning
När en blob ännu inte har checkats in returnerar anropet Get Block List
med blocklisttype=all
de ogenomförda blocken och elementet CommittedBlocks
är tomt.
Get Block List
stöder inte samtidighet när den läser listan över ogenomförda block. Anrop till Get Block List
var blocklisttype=uncommitted
eller blocklisttype=all
har en lägre maximal begärandefrekvens än andra läsåtgärder. Mer information om måldataflödet för läsåtgärder finns i Skalbarhets- och prestandamål för Azure Storage.
Från och med version 2019-12-12 kan en blockblob innehålla block på upp till 4 000 mebibyte (MiB). För att skydda program som använder ett signerat 32-bitars heltal för att representera blockstorleken resulterar anrop Get Block List
på en blockblob som innehåller ett block som är större än 100 MiB med en REST-version tidigare än 2019-12-12 i statuskod 409 (konflikt).
Get Block List
gäller endast för blockblobar. Anrop på Get Block List
en sidblob resulterar i statuskod 400 (felaktig begäran).
Get Block List
på en arkiverad blockblob misslyckas.
Fakturering
Prisbegäranden kan komma från klienter som använder Blob Storage-API:er, antingen direkt via REST-API:et för Blob Storage eller från ett Azure Storage-klientbibliotek. Dessa begäranden ackumulerar avgifter per transaktion. Typen av transaktion påverkar hur kontot debiteras. Lästransaktioner ackumuleras till exempel till en annan faktureringskategori än skrivtransaktioner. I följande tabell visas faktureringskategorin för Get Block List
begäranden baserat på lagringskontotypen:
Åtgärd | Typ av lagringskonto | Faktureringskategori |
---|---|---|
Hämta blockeringslista | Premium-blockblob Standard generell användning v2 |
Andra åtgärder |
Hämta blockeringslista | Standard generell användning v1 | Läsåtgärder |
Mer information om priser för den angivna faktureringskategorin finns i Azure Blob Storage Prissättning.
Se även
Auktorisera begäranden till AzureStorage-status och felkoderBlob Storage-felkoderAnge tidsgränser för Blob Storage-åtgärder