Megosztás a következőn keresztül:


Rövid útmutató: Azure Blob Storage-ügyfélkódtár a Rubyhoz

Megtudhatja, hogyan hozhat létre, tölthet le és listázhat blobokat a Ruby használatával egy Tárolóban a Microsoft Azure Blob Storage-ban.

Előfeltételek

Az Azure Storage eléréséhez Azure-előfizetésre lesz szüksége. Ha még nem rendelkezik előfizetéssel, a kezdés előtt hozzon létre egy ingyenes fiókot .

Az Azure Storage-hoz való minden hozzáférés egy tárfiókon keresztül történik. Ebben a rövid útmutatóban hozzon létre egy tárfiókot az Azure Portal, az Azure PowerShell vagy az Azure CLI használatával. A tárfiókok létrehozásával kapcsolatban lásd : Tárfiók létrehozása.

Győződjön meg arról, hogy a következő további előfeltételek vannak telepítve:

A mintaalkalmazás letöltése

Az ebben a rövid útmutatóban használt mintaalkalmazás egy alapszintű Ruby-alkalmazás.

A Git használatával töltse le az alkalmazás egy példányát a fejlesztői környezetbe. Ez a parancs klónozza az adattárat a helyi gépre:

git clone https://github.com/Azure-Samples/storage-blobs-ruby-quickstart.git

Lépjen a storage-blobs-ruby-quickstart mappára, és nyissa meg a example.rb fájlt a kódszerkesztőben.

A hitelesítési adatok másolása az Azure Portalról

A mintaalkalmazásnak engedélyeznie kell a tárfiókhoz való hozzáférést. Adja meg a tárfiók hitelesítő adatait az alkalmazásnak kapcsolati sztring formájában. A tárfiók hitelesítő adatainak megtekintése:

  1. Az Azure portálon menjen a tárfiókjába.

  2. A tárfiók áttekintésének Beállítások szakaszában válassza Hozzáférési kulcsok lehetőséget a fiók hozzáférési kulcsainak és kapcsolati sztringjének megjelenítéséhez.

  3. Jegyezze fel a tárfiók nevét, amelyre az engedélyezéshez szüksége lesz.

  4. Keresse meg a kulcs értékét kulcs1alatt, és válassza másolása lehetőséget a fiókkulcs másolásához.

    Képernyőkép a fiókkulcs Azure Portalról való másolásáról

A tárolási kapcsolati sztring konfigurálása

Adja meg a tárfiók nevét és a fiókkulcsot az alkalmazás BlobService-példányának létrehozásához.

A example.rb fájlban található alábbi kód egy új BlobService-objektumot hoz létre. Cserélje le a fióknév és a fiókkulcs értékét a fiók nevére és kulcsára.

# Create a BlobService object
account_name = "accountname"
account_key = "accountkey"

blob_client = Azure::Storage::Blob::BlobService.create(
    storage_account_name: account_name,
    storage_access_key: account_key
)

A minta futtatása

A minta létrehoz egy tárolót a Blob Storage-ban, létrehoz egy új blobot a tárolóban, listázza a tárolóban lévő blobokat, és letölti a blobot egy helyi fájlba.

Futtassa a példát. Íme egy példa az alkalmazás futtatásából származó kimenetre:

C:\azure-samples\storage-blobs-ruby-quickstart> ruby example.rb

Creating a container: quickstartblobs18cd9ec0-f4ac-4688-a979-75c31a70503e

Creating blob: QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt

List blobs in the container following continuation token
        Blob name: QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt

Downloading blob to C:/Users/azureuser/Documents/QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt

Paused, press the Enter key to delete resources created by the sample and exit the application

A folytatáshoz nyomja le az Enter billentyűt, a mintaprogram törli a tárolót és a helyi fájlt. A folytatás előtt ellenőrizze a Dokumentumok mappát a letöltött fájlhoz.

Az Azure Storage Explorerrel is megtekintheti a tárfiók fájljait. Az Azure Storage Explorer egy ingyenes, platformfüggetlen eszköz, amellyel elérheti a tárfiókjával kapcsolatos információkat.

Miután ellenőrizte a fájlokat, nyomja le az Enter billentyűt a tesztfájlok törléséhez és a bemutató befejezéséhez. Nyissa meg a example.rb fájlt a kód megtekintéséhez.

A mintakód értelmezése

Ezután végigvezetjük a mintakódot, hogy megérthesse, hogyan működik.

A tárobjektumokra mutató hivatkozások lekérése

Az első teendő a Blob Storage eléréséhez és kezeléséhez használt objektumok példányainak létrehozása. Ezek az objektumok egymásra épülnek. Ezeket a lista következő szereplője használja.

  • Hozza létre az Azure Storage BlobService objektum egy példányát a kapcsolati hitelesítő adatok beállításához.
  • Hozza létre a tárolóobjektumot , amely az elérni kívánt tárolót jelöli. A tárolók a blobok rendszerezésére szolgálnak, például mappákat használnak a számítógépen a fájlok rendszerezéséhez.

Miután megkapta a tárolóobjektumot, létrehozhat egy Block blob objektumot, amely egy adott blobra mutat, amely Önt érdekli. A Blokk objektummal blobokat hozhat létre, tölthet le és másolhat.

Fontos

A tárolók nevei csak kisbetűket tartalmazhatnak. További információkért a tárolók és blobok neveiről, lásd: Tárolók, blobok és metaadatok elnevezése és hivatkozása.

A következő példakód:

  • Új tároló létrehozása
  • Engedélyeket állít be a tárolón, hogy a blobok nyilvánosak legyenek. A tárolót quickstartblobok-nak hívják, amelyhez hozzá van fűzve egy egyedi azonosító.
# Create a container
container_name = "quickstartblobs" + SecureRandom.uuid
puts "\nCreating a container: " + container_name
container = blob_client.create_container(container_name)

# Set the permission so the blobs are public
blob_client.set_container_acl(container_name, "container")

Blob létrehozása a tárolóban

A Blob Storage támogatja a blokkblobokat, a hozzáfűző blobokat és a lapblobokat. Blob létrehozásához hívja meg a create_block_blob metódust, és adja át neki az adatokat.

Az alábbi példa egy QuickStart_ nevű blobot hoz létre egy egyedi azonosítóval és egy .txt fájlkiterjesztéssel a korábban létrehozott tárolóban.

# Create a new block blob containing 'Hello, World!'
blob_name = "QuickStart_" + SecureRandom.uuid + ".txt"
blob_data = "Hello, World!"
puts "\nCreating blob: " + blob_name
blob_client.create_block_blob(container.name, blob_name, blob_data)

A blokkblobok akár 4,7 TB méretűek is lehetnek, és a számolótábláktól a nagy videofájlokig bármi lehet. A lapblobok elsősorban az IaaS virtuális gépeket futtató VHD-fájlokhoz használatosak. A hozzáfűző blobokat gyakran használják naplózáshoz, például ha fájlba szeretne írni, majd további információkat szeretne hozzáadni.

Tárolóban lévő blobok kilistázása

A tárolóban lévő fájlok listájának lekérése a list_blobs metódus használatával. Az alábbi kód lekéri a blobok listáját, majd megjeleníti a nevüket.

# List the blobs in the container
puts "\nList blobs in the container following continuation token"
nextMarker = nil
loop do
    blobs = blob_client.list_blobs(container_name, { marker: nextMarker })
    blobs.each do |blob|
        puts "\tBlob name: #{blob.name}"
    end
    nextMarker = blobs.continuation_token
    break unless nextMarker && !nextMarker.empty?
end

Blob letöltése

Töltsön le egy blobot a helyi lemezre a get_blob metódus használatával. Az alábbi kód letölti az előző szakaszban létrehozott blobot.

# Download the blob

# Set the path to the local folder for downloading
if(is_windows)
    local_path = File.expand_path("~/Documents")
else 
    local_path = File.expand_path("~/")
end

# Create the full path to the downloaded file
full_path_to_file = File.join(local_path, blob_name)

puts "\nDownloading blob to " + full_path_to_file
blob, content = blob_client.get_blob(container_name, blob_name)
File.open(full_path_to_file,"wb") {|f| f.write(content)}

Erőforrások tisztítása

Ha már nincs szükség blobra, a delete_blob használatával távolítsa el. Töröljön egy teljes tárolót a delete_container metódus használatával. A tároló törlése a tárolóban tárolt blobokat is törli.

# Clean up resources, including the container and the downloaded file
blob_client.delete_container(container_name)
File.delete(full_path_to_file)

Erőforrások Ruby-alkalmazások blobokkal való fejlesztéséhez

További források a Ruby-fejlesztéshez:

Következő lépések

Ebben a rövid útmutatóban megtanulta, hogyan továbbíthat fájlokat az Azure Blob Storage és egy helyi lemez között a Ruby használatával. A Blob Storage használatával kapcsolatos további információkért haladjon tovább a Tárfiók áttekintéséhez.

A Storage Explorerrel és a blobokkal kapcsolatos további információkért lásd: Azure Blob Storage-erőforrások kezelése a Storage Explorerrel.