Blobok keresése címkék szerint a tárolóban
A Find Blobs by Tags in Container
művelet megkeresi az összes olyan blobot, amelynek címkéi megegyeznek egy tároló keresési kifejezésével.
Kérés
A kérést az Find Blobs by Tags in Container
alábbiak szerint hozhatja létre. A HTTPS használatát javasoljuk. Cserélje le a myaccount kifejezést a tárfiók nevére, a mycontainer helyére pedig a tároló nevét.
GET metóduskérés URI-ja | HTTP-verzió |
---|---|
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=blobs&where=<expression> |
HTTP/1.1 |
URI-paraméterek
A kérelem URI-ján a következő további paramétereket adhatja meg:
Paraméter | Leírás |
---|---|
expression |
Kötelező. Az eredményhalmazt úgy szűri, hogy csak azokat a blobokat tartalmazza, amelyek címkéi megegyeznek a megadott kifejezéssel. A kifejezés felépítéséről a cikk későbbi , Megjegyzések című szakaszában olvashat. |
marker |
Választható. Egy sztringérték, amely azonosítja az eredményhalmaz következő művelettel visszaadandó részét. A művelet egy jelölőértéket ad vissza a választörzsben, ha a visszaadott eredményhalmaz nem fejeződött be. A jelölőérték ezután egy későbbi hívásban használható a következő elemkészlet lekéréséhez. A jelölő értéke átlátszatlan az ügyfél számára. |
maxresults |
Választható. A visszaadandó blobok maximális számát adja meg. Ha a kérés nem ad meg maxresults vagy ad meg 5000-nél nagyobb értéket, a kiszolgáló legfeljebb 5000 elemet ad vissza. Ha további eredményeket kell visszaadnia, a szolgáltatás egy folytatási jogkivonatot ad vissza a NextMarker válaszelemben. Bizonyos esetekben előfordulhat, hogy a szolgáltatás a megadottnál maxresults kevesebb eredményt ad vissza, de továbbra is visszaad egy folytatási jogkivonatot.Ha nullánál kisebb vagy egyenlő értékre állítja maxresults be a hibát, a 400-es hibakód (hibás kérés) jelenik meg. |
timeout |
Választható. Másodpercben 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érelmek 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érelmek engedélyezése az Azure Storage-ba. |
x-ms-version |
Minden engedélyezett kéréshez szükséges, de névtelen kérésekhez nem kötelező. A kérelemhez használandó művelet verzióját adja meg. További információ: Az Azure Storage-szolgáltatások verziószámozása. |
x-ms-client-request-id |
Választható. Ügyfél által generált, átlátszatlan értéket biztosít egy 1 kibibyte (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. |
A kérés törzse
Nincsenek.
Reagálás
A válasz tartalmaz egy HTTP-állapotkódot, válaszfejléceket és egy választörzset.
Állapotkód
A sikeres művelet a 200 -os állapotkódot adja vissza (OK).
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 |
---|---|
Content-Type |
application/xml A tartalomtípust adja meg. |
Content-Length |
A visszaadott XML-dokumentum méretét adja meg bájtban. |
x-ms-request-id |
Egyedileg azonosítja a végrehajtott kérést. Segítségével elháríthatja a kérést. További információ: API-műveletek hibaelhárítása. |
x-ms-version |
A kérés végrehajtásához használt Azure Blob Storage verzióját jelzi. |
Date |
UTC dátum/idő érték, amely azt az időpontot jelzi, amikor a szolgáltatás elküldte a választ. |
x-ms-client-request-id |
A kérések és a megfelelő 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-karakterből áll. Ha a x-ms-client-request-id fejléc nincs jelen a kérelemben, ez a fejléc nem lesz jelen a válaszban. |
Választörzs
A válasz törzsének formátuma a következő:
<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint=http://myaccount.blob.core.windows.net/>
<Where>string-value</Where>
<Blobs>
<Blob>
<Name>blob-name</Name>
<ContainerName>container-name</ContainerName>
<Tags>
<TagSet>
<Tag>
<Key>matching-tag-name1</Key>
<Value>matching-tag-value1</Value>
</Tag>
<Tag>
<Key>matching-tag-name2</Key>
<Value>matching-tag-value2</Value>
</Tag>
</TagSet>
</Tags>
</Blob>
</Blobs>
<NextMarker />
</EnumerationResults>
A válasz törzse egy jól formázott UTF-8 XML-dokumentum.
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 Find Blobs by Tags in Container
alábbiak szerint engedélyezheti.
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 vagy szolgáltatásnév meghívja a Find Blobs by Tags in Container
műveletet, valamint a legkevésbé emelt szintű beépített Azure RBAC-szerepkört, amely tartalmazza ezt a műveletet:
- Azure RBAC-művelet:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/filter/action
- Legkevésbé kiemelt beépített szerepkör:Storage-blobadatok tulajdonosa
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
A Find Blobs by Tags in Container
műveletet a REST API 2021-04-10-es és újabb verziói támogatják.
A használt másodlagos index Find Blobs by Tags in Container
végül konzisztens. előfordulhat, hogy a Frissítések blobcímkéi Set Blob Tags
nem jelennek meg azonnal a műveletek számáraFind Blobs by Tags in Container
.
Keresési kifejezés létrehozása
Az where
URI paraméter megkeresi a tárfiókban és a tárolóban található blobokat, amelyek címkéi megegyeznek egy kifejezéssel. A kifejezésnek ki kell értékelnie, hogy true
egy blob vissza legyen adva az eredményhalmazban.
A tárolási szolgáltatás támogatja az ANSI SQL-záradék WHERE
nyelvhelyességi részhalmazát a where=<expression>
lekérdezési paraméter értékéhez. A tárolási szolgáltatás a következő operátorokat támogatja:
Operátor | Leírás | Példa |
---|---|---|
= |
Egyenlő | &where=Status = 'In Progress' |
> |
Nagyobb, mint | &where=LastModified > '2018-06-18 20:51:26Z' |
>= |
Nagyobb vagy egyenlő mint | &where=Priority >= '05' |
< |
Kisebb mint | &where=Age < '032' |
<= |
Kisebb vagy egyenlő mint | &where=Reviewer <= 'Smith' |
AND |
Logikai és | &where=Name > 'C' AND Name < 'D' &where=Age > '032' AND Age < '100' |
Megjegyzés
Az URI paraméter értékének where
megfelelően kell kódolnia az URI-t (szóközöket és operátorokat is beleértve). Az előző példák ezt kihagyják az olvashatóság érdekében. @container
nem támogatott, ha a tároló egy URI része.
Minden címkeérték sztring. A támogatott bináris relációs operátorok a címkeértékek lexikográfiai rendezését használják. A nem sztring típusú adattípusok( például számok és dátumok) támogatásához megfelelő kitöltést és rendezhető formázást kell használnia. A címkeértékeket egy idézőjelek közé kell foglalni.
Ha a címkenevek normál SQL-azonosítók, azok a menekülés nélkül is megjelenhetnek. Ha speciális karaktereket tartalmaznak, dupla idézőjelekkel kell elválasztani őket (például "TagName"
= TagValue
). Javasoljuk, hogy mindig mellékelje a címkeneveket idézőjelek közé.
A tárolási szolgáltatás elutasítja a 400-as hibakódú érvénytelen kifejezést tartalmazó kéréseket (hibás kérelem).
Számlázás
A díjszabási kérések a Blob Storage API-kat használó ügyfelektől, közvetlenül a Blob Storage REST API-ból vagy egy Azure Storage-ügyfélkódtárból származhatnak. 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 Find Blobs by Tags in Container
mutatja be:
Művelet | Tárfiók típusa | Számlázási kategória |
---|---|---|
Blobok keresése címkék szerint a tárolóban | Prémium szintű blokkblob Standard általános célú v2 Standard általános célú v1 |
Tárolóműveletek listázása és létrehozása |
A megadott számlázási kategória díjszabásával kapcsolatos további információkért lásd: Azure Blob Storage Díjszabás.
Lásd még
Adatok kezelése és keresése Azure Blob Storage blobindexcímkékkel
Kérések engedélyezése az Azure Storage-ba
Állapot- és hibakódok
Blob Storage-hibakódok