Udostępnij za pośrednictwem


Zarządzanie właściwościami i metadanymi obiektów blob za pomocą języka JavaScript

Oprócz danych, które zawierają, obiekty blob obsługują właściwości systemu i metadane zdefiniowane przez użytkownika. W tym artykule pokazano, jak zarządzać właściwościami systemu i metadanymi zdefiniowanymi przez użytkownika za pomocą biblioteki klienta usługi Azure Storage dla języka JavaScript.

Wymagania wstępne

Informacje o właściwościach i metadanych

  • Właściwości systemu: właściwości systemu istnieją w każdym zasobie usługi Blob Storage. Niektóre z nich mogą być odczytywane lub ustawiane, a inne są tylko do odczytu. Pod osłonami niektóre właściwości systemowe odpowiadają pewnym standardowym nagłówkom HTTP. Biblioteka klienta usługi Azure Storage dla języka JavaScript obsługuje te właściwości.

  • Metadane zdefiniowane przez użytkownika: metadane zdefiniowane przez użytkownika składają się z co najmniej jednej pary nazwa-wartość określonej dla zasobu usługi Blob Storage. Za pomocą metadanych można przechowywać dodatkowe wartości z zasobem. Wartości metadanych są przeznaczone tylko do własnych celów i nie mają wpływu na zachowanie zasobu.

    Pary nazwa/wartość metadanych są prawidłowymi nagłówkami HTTP i powinny być zgodne ze wszystkimi ograniczeniami dotyczącymi nagłówków HTTP. Aby uzyskać więcej informacji na temat wymagań dotyczących nazewnictwa metadanych, zobacz Nazwy metadanych.

Uwaga

Tagi indeksu obiektów blob zapewniają również możliwość przechowywania dowolnych atrybutów klucza/wartości zdefiniowanych przez użytkownika wraz z zasobem usługi Azure Blob Storage. Podobnie jak w przypadku metadanych, tylko tagi indeksu obiektów blob są automatycznie indeksowane i możliwe do przeszukiwania przez natywną usługę obiektów blob. Metadanych nie można indeksować i wykonywać zapytań, chyba że korzystasz z oddzielnej usługi, takiej jak Azure Search.

Aby dowiedzieć się więcej na temat tej funkcji, zobacz Zarządzanie danymi i znajdowanie ich w usłudze Azure Blob Storage za pomocą indeksu obiektów blob (wersja zapoznawcza).

Ustawianie i pobieranie właściwości

Aby ustawić właściwości obiektu blob, użyj następującej metody:

Poniższy przykład kodu ustawia blobContentType właściwości systemu i blobContentLanguage dla obiektu blob.

Wszystkie właściwości, które nie zostały jawnie ustawione, są czyszczone. Poniższy przykład kodu najpierw pobiera istniejące właściwości obiektu blob, a następnie używa ich do wypełniania nagłówków, które nie są aktualizowane.

async function setHTTPHeaders(blobClient, headers) {
  
  // Get existing properties
  const properties = await blobClient.getProperties();

  // Set the blobContentType and blobContentLanguage headers
  // Populate the remaining headers from the existing properties
  blobHeaders = {
    blobContentType: 'text/plain',
    blobContentLanguage: 'en-us',
    blobContentEncoding: properties.contentEncoding,
    blobCacheControl: properties.cacheControl,
    blobContentDisposition: properties.contentDisposition,
    blobContentMD5: properties.contentMD5
  },

  await blobClient.setHTTPHeaders(blobHeaders);
}

Aby pobrać właściwości obiektu blob, użyj następującej metody:

Poniższy przykład kodu pobiera właściwości systemu obiektu blob i wyświetla niektóre wartości:

async function getProperties(blobClient) {

  const properties = await blobClient.getProperties();
  
  console.log(`blobType: ${properties.blobType}`);
  console.log(`contentType: ${properties.contentType}`);
  console.log(`contentLength: ${properties.contentLength}`);
  console.log(`lastModified: ${properties.lastModified}`);
}

Ustawianie i pobieranie metadanych

Metadane można określić jako jedną lub więcej par nazwa-wartość w zasobie obiektu blob lub kontenera. Aby ustawić metadane, wyślij obiekt Metadata zawierający pary name-value przy użyciu następującej metody:

Poniższy przykład kodu ustawia metadane obiektu blob:

async function setBlobMetadata(blobClient, metadata) {
  
  metadata = {
    docType: 'text',
    category: 'reference'
  };

  await blobClient.setMetadata(metadata);
}

Aby pobrać metadane, wywołaj metodę getProperties w obiekcie blob, aby wypełnić kolekcję metadanych, a następnie odczytaj wartości z właściwości metadanych . Metoda getProperties pobiera właściwości obiektu blob i metadane, wywołując zarówno operację Get Blob Properties , jak i operację Get Blob Metadata .

Zasoby

Aby dowiedzieć się więcej na temat zarządzania właściwościami systemu i metadanymi zdefiniowanymi przez użytkownika przy użyciu biblioteki klienta usługi Azure Blob Storage dla języka JavaScript, zobacz następujące zasoby.

Przykłady kodu

Operacje interfejsu API REST

Zestaw Azure SDK dla języka JavaScript zawiera biblioteki, które bazują na interfejsie API REST platformy Azure, co umożliwia interakcję z operacjami interfejsu API REST za pomocą znanych paradygmatów języka JavaScript. Metody biblioteki klienta do zarządzania właściwościami systemu i metadanymi zdefiniowanymi przez użytkownika używają następujących operacji interfejsu API REST:

Zasoby biblioteki klienta

  • Ten artykuł jest częścią przewodnika dla deweloperów usługi Blob Storage dla języka JavaScript/Typescript. Aby dowiedzieć się więcej, zobacz pełną listę artykułów z przewodnika dla deweloperów na stronie Tworzenie aplikacji JavaScript/Typescript.