Blokklista lekérése
A Get Block List
művelet lekéri a blokkblob részeként feltöltött blokkok listáját.
A blobhoz két blokklista van fenntartva:
Véglegesített blokklista: Azoknak a blokkoknak a listája, amelyek sikeresen véglegesítve lettek egy adott blobban a Tiltólista elhelyezése paranccsal.
Nem véglegesített blokklista: A blobhoz a Put Block használatával feltöltött blokkok listája, de még nem véglegesítve. Ezek a blokkok az Azure-ban tárolódnak egy blobhoz társítva, de még nem képezik a blob részét.
Meghívhatja Get Block List
a véglegesített tiltólistát, a nem véglegesített tiltólistát vagy mindkét listát. Ezt a műveletet meghívhatja a pillanatkép véglegesített tiltólistájának lekéréséhez is.
Kérés
A Get Block List
kérelem a következőképpen hozható létre. Javasoljuk, hogy HTTPS-t használjon. Cserélje le a myaccount kifejezést a tárfiók nevére:
GET metóduskérés URI-ja | HTTP-verzió |
---|---|
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 |
Emulált tárolási szolgáltatás kérése
Amikor kérést küld az emulált tárolási szolgáltatásra, adja meg az emulátor gazdagépnevét és a Blob-szolgáltatás portját 127.0.0.1:10000
, majd az emulált tárfiók nevét:
GET metóduskérés URI-ja | HTTP-verzió |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=blocklist |
HTTP/1.1 |
További információ: Az Azurite emulátor használata helyi Azure Storage-fejlesztéshez.
URI-paraméterek
A kérelem URI-ján a következő további paramétereket adhatja meg:
URI-paraméter | Description |
---|---|
snapshot |
Választható. A pillanatkép paraméter egy átlátszatlan DateTime érték, amely jelen esetben meghatározza a lekérendő bloblistát. A blob-pillanatképek használatával kapcsolatos további információkért lásd Létrehozás egy blob pillanatképét. |
versionid |
Nem kötelező a 2019-12-12-s és újabb verziókhoz. A versionid paraméter egy átlátszatlan DateTime érték, amely jelen esetben meghatározza a lekérendő blob verzióját. |
blocklisttype |
Meghatározza, hogy a véglegesített blokkok listáját, a véglegesítetlen blokkok listáját vagy mindkét listát együtt adja-e vissza. Az érvényes értékek a következők: committed , uncommitted vagy all . Ha kihagyja ezt a paramétert, Get Block List a véglegesített blokkok listáját adja vissza. |
timeout |
Választható. A timeout paraméter másodpercben van kifejezve. További információ: Időtúllépések beállítása Blob Storage-műveletekhez. |
Kérésfejlécek
Az alábbi táblázat a szükséges és nem kötelező kérelemfejléceket ismerteti.
Kérelem fejléce | Leírás |
---|---|
Authorization |
Kötelező. Megadja az engedélyezési sémát, a fióknevet és az aláírást. További információ: Kérések engedélyezése az Azure Storage-ba. |
Date vagy x-ms-date |
Kötelező. Megadja a kérés egyezményes világidő (UTC) formátumban kifejezett időpontját. További információ: Kérések engedélyezése az Azure Storage-ba. |
x-ms-version |
Az összes engedélyezett kérelemhez kötelező, a névtelen kérésekhez nem kötelező. A kérelemhez használni kívánt művelet verzióját adja meg. További információ: Az Azure Storage-szolgáltatások verziószámozása. |
x-ms-lease-id:<ID> |
Választható. Ha ez a fejléc meg van adva, a művelet csak akkor lesz végrehajtva, ha az alábbi feltételek teljesülnek: - A blob bérlete jelenleg aktív. – A kérelemben megadott bérletazonosító megegyezik a blob bérletazonosítójával. Ha ez a fejléc meg van adva, és egyik feltétel sem teljesül, a kérés meghiúsul, és a művelet a 412-s állapotkóddal meghiúsul (az előfeltétel sikertelen). |
x-ms-client-request-id |
Választható. Ügyfél által generált, átlátszatlan értéket biztosít egy 1 kib-os (KiB) karakterkorláttal, amelyet a naplózás konfigurálásakor rögzít a naplókban. Javasoljuk, hogy ezt a fejlécet használva korrelálja az ügyféloldali tevékenységeket a kiszolgáló által kapott kérésekkel. További információ: Monitorozási Azure Blob Storage. |
Ez a művelet feltételes fejlécek használatát is támogatja a művelet végrehajtásához, ha egy adott feltétel teljesül. További információ: Feltételes fejlécek megadása Blob Storage-műveletekhez.
A kérés törzse
Nincsenek.
Mintakérés
A következő mintakérés URI-ja egy MOV1.avi nevű blob véglegesített tiltólistáját adja vissza:
GET http://myaccount.blob.core.windows.net/movies/MOV1.avi?comp=blocklist&blocklisttype=committed HTTP/1.1
A következő mintakérés URI-ja a véglegesített és a nem véglegesített tiltólistát is visszaadja:
GET http://myaccount.blob.core.windows.net/movies/MOV1.avi?comp=blocklist&blocklisttype=all HTTP/1.1
Az alábbi mintakérés URI-ja egy pillanatkép véglegesített tiltólistáját adja vissza. A pillanatképek csak véglegesített blokkokból állnak, így nincsenek hozzá nem véglegesített blokkok társítva.
GET http://myaccount.blob.core.windows.net/mycontainer/myblob?comp=blocklist&snapshot=2009-09-30T20%3a11%3a15.2735974Z
Reagálás
A válasz tartalmaz egy HTTP-állapotkódot, egy válaszfejléceket és egy választörzset, amely tartalmazza a blokkok listáját.
Állapotkód
A sikeres művelet a 200-ra (OK) vonatkozó állapotkódot adja vissza.
Az állapotkódokkal kapcsolatos információkért lásd: Állapot- és hibakódok.
Válaszfejlécek
A műveletre adott válasz a következő fejléceket tartalmazza. A válasz további szabványos HTTP-fejléceket is tartalmazhat. Minden szabványos fejléc megfelel a HTTP/1.1 protokoll specifikációjának.
Válaszfejléc | Description |
---|---|
Last-Modified |
A blob utolsó módosításának dátuma/időpontja. A dátumformátum az RFC 1123-at követi. További információ: Dátum-/időértékek ábrázolása fejlécekben. Csak akkor adja vissza, ha a blob véglegesített blokkokat. Minden olyan művelet, amely módosítja a blobot, beleértve a blob metaadatainak vagy tulajdonságainak frissítését is, módosítja a blob utolsó módosítási időpontját. |
ETag |
A blob ETagje. Csak akkor adja vissza, ha a blob véglegesített blokkokat. |
Content-Type |
A blob MIME-tartalomtípusa. Az alapértelmezett érték application/xml . |
x-ms-blob-content-length |
A blob mérete bájtban. |
x-ms-request-id |
Ez a fejléc egyedileg azonosítja a végrehajtott kérést, és a kérés hibaelhárításához használható. További információ: API-műveletek hibaelhárítása. |
x-ms-version |
A kérés végrehajtásához használt szolgáltatásverziót jelzi. A rendszer ezt a fejlécet adja vissza a 2009-09-19-es és újabb verzióval kapcsolatos kérésekhez. Ez a fejléc egy megadott verzió nélküli névtelen kérés esetén is vissza lesz adva, ha a tárolót a Blob Storage 2009-09-19-es verziójával jelölték meg nyilvános hozzáférésre. Megjegyzés: Névtelen kéréssel csak a véglegesített tiltólista küldhető vissza. |
Date |
A szolgáltatás által létrehozott UTC dátum/idő érték, amely a válasz indításának időpontját jelzi. |
x-ms-client-request-id |
A kérések és a kapcsolódó válaszok hibaelhárítására használható. A fejléc értéke megegyezik a x-ms-client-request-id fejléc értékével, ha az szerepel a kérelemben, és az érték legfeljebb 1024 látható ASCII-karaktert tartalmaz. Ha a x-ms-client-request-id fejléc nem szerepel a kérelemben, akkor az nem szerepel a válaszban. |
Ez a művelet a feltételes fejlécek használatát is támogatja a tiltólista lekéréséhez, ha egy adott feltétel teljesül. További információ: Feltételes fejlécek megadása Blob Storage-műveletekhez.
Választörzs
A csak véglegesített blokkokat visszaadandó kérés választörzsének formátuma a következő:
<?xml version="1.0" encoding="utf-8"?>
<BlockList>
<CommittedBlocks>
<Block>
<Name>base64-encoded-block-id</Name>
<Size>size-in-bytes</Size>
</Block>
<CommittedBlocks>
</BlockList>
A véglegesített és a nem véglegesített blokkokat is visszaadó kérés választörzsének formátuma a következő:
<?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>
Mintaválasz
A következő példában a paraméter értéke blocklisttype
, committed
így a válaszban csak a blob véglegesített blokkja lesz visszaadva.
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>
Ebben a példában a paraméter értéke blocklisttype
, all
és a blob véglegesített és nem véglegesített blokkja is vissza lesz adva a válaszban.
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>
Ebben a következő példában a paraméter all
értéke blocklisttype
, de a blob még nem lett véglegesítve, ezért az CommittedBlocks
elem üres.
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>
Engedélyezés
Az azure storage-beli adathozzáférési műveletek meghívásakor engedélyezés szükséges. A műveletet az Get Block List
alábbiak szerint engedélyezheti.
Fontos
A Microsoft a Microsoft Entra ID felügyelt identitásokkal való használatát javasolja az Azure Storage felé irányuló kérések engedélyezéséhez. Microsoft Entra ID a megosztott kulcsos hitelesítéshez képest kiemelkedő biztonságot és könnyű használatot biztosít.
Az Azure Storage támogatja a Microsoft Entra ID használatát a blobadatokra irányuló kérések engedélyezéséhez. A Microsoft Entra ID azure-beli szerepköralapú hozzáférés-vezérléssel (Azure RBAC) adhat engedélyeket egy rendszerbiztonsági tagnak. A rendszerbiztonsági tag lehet felhasználó, csoport, alkalmazás-szolgáltatásnév vagy Azure-beli felügyelt identitás. A rendszerbiztonsági tag hitelesítését a Microsoft Entra ID végzi egy OAuth 2.0-jogkivonat visszaadásához. A jogkivonat ezután a Blob szolgáltatásra irányuló kérések engedélyezésére használható.
További információ a Microsoft Entra ID használatával történő engedélyezésről: Blobokhoz való hozzáférés engedélyezése Microsoft Entra ID használatával.
Engedélyek
Az alábbiakban azokat az RBAC-műveletet soroljuk fel, amelyek szükségesek ahhoz, hogy egy Microsoft Entra felhasználó, csoport, felügyelt identitás vagy szolgáltatásnév meghívja a műveletet, valamint a legkevésbé emelt jogosultságú beépített Azure RBAC-szerepkört, amely tartalmazza ezt a Get Block List
műveletet:
- Azure RBAC-művelet:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
- Legkevésbé emelt szintű beépített szerepkör:Storage-blobadatok olvasója
A szerepkörök Azure RBAC-vel való hozzárendelésével kapcsolatos további információkért lásd: Azure-szerepkör hozzárendelése blobadatokhoz való hozzáféréshez.
Megjegyzések
Hívás Get Block List
a blokkblobra véglegesített blokkok listájának, a még le nem véglegesített blokkok listájának vagy mindkét listának a visszaadására. A paraméter használatával blocklisttype
adja meg, hogy mely blokkok listáját szeretné visszaadni. A véglegesített blokkok listája ugyanabban a sorrendben lesz visszaadva, mint amelyet a Tiltólista elhelyezése művelet véglegesített.
A nem véglegesített tiltólistával megállapíthatja, hogy mely blokkok hiányoznak a blobból azokban az esetekben, amikor a hívás vagy Put Block
Put Block List
sikertelen volt. A nem véglegesített blokkok listája betűrendben lesz visszaadva. Ha egy blokkazonosító többször lett feltöltve, csak a legutóbb feltöltött blokk jelenik meg a listában.
Megjegyzés
Ha még nem véglegesített egy blobot, a meghívás Get Block List
a blocklisttype=all
nem véglegesített blokkokat adja vissza, és az CommittedBlocks
elem üres.
Get Block List
nem támogatja az egyidejűséget, ha beolvassa a nem véglegesített blokkok listáját. A hívások száma Get Block List
blocklisttype=uncommitted
alacsonyabb vagy blocklisttype=all
alacsonyabb, mint a többi olvasási művelet esetében. Az olvasási műveletek cél átviteli sebességével kapcsolatos részletekért lásd: Az Azure Storage méretezhetőségi és teljesítménycéljai.
A 2019-12-12-es verziótól a blokkblob legfeljebb 4000 mebibytes (MiB) blokkot tartalmazhat. Az aláírt 32 bites egész számot használó alkalmazások védelméhez a blokkméret Get Block List
megjelenítéséhez a 2019-12-12-nél korábbi REST-verziójú, 100 MiB-nél nagyobb blokkot tartalmazó blokkot tartalmazó blokkblob meghívása 409-es állapotkódot eredményez (ütközés).
Get Block List
csak a blokkblobokra vonatkozik. Egy Get Block List
lapblob hívása a 400-ra (hibás kérelem) vonatkozó állapotkódot eredményezi.
Get Block List
egy archivált blokkblobon sikertelen lesz.
Számlázás
A díjszabási kérések olyan ügyfelektől származhatnak, amelyek Blob Storage API-kat használnak, közvetlenül a Blob Storage REST API-ból vagy egy Azure Storage-ügyfélkódtárból. Ezek a kérések tranzakciónkénti díjakat halmoznak fel. A tranzakció típusa befolyásolja a fiók terhelését. Az olvasási tranzakciók például más számlázási kategóriába tartoznak, mint az írási tranzakciók. Az alábbi táblázat a tárfiók típusa alapján a kérelmek számlázási kategóriáját Get Block List
mutatja be:
Művelet | Tárfiók típusa | Számlázási kategória |
---|---|---|
Blokklista lekérése | Prémium szintű blokkblob Standard általános célú v2 |
Egyéb műveletek |
Blokklista lekérése | Standard általános célú v1 | Olvasási műveletek |
A megadott számlázási kategória díjszabásáról a Azure Blob Storage Díjszabás című témakörben talál további információt.
Lásd még
Kérések engedélyezése az Azure Storageállapotára és hibakódokBlob Storage-hibakódokIdőtúllépések beállítása a Blob Storage-műveletekhez