AppendBlobClient class

AppendBlobClient 會定義一組適用于附加 Blob 的作業。

Extends

建構函式

AppendBlobClient(string, PipelineLike)

建立 AppendBlobClient 的實例。 此方法接受指向附加 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。

AppendBlobClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

建立 AppendBlobClient 的實例。 此方法接受指向附加 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。

AppendBlobClient(string, string, string, StoragePipelineOptions)

建立 AppendBlobClient 的實例。

屬性

containerName

與 Blob 相關聯之儲存體容器的名稱。

name

Blob 的名稱。

繼承的屬性

accountName
credential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自套件的 @azure/identity 認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。

url

編碼的 URL 字串值。

方法

appendBlock(HttpRequestBody, number, AppendBlobAppendBlockOptions)

將新的資料區塊認可至現有附加 Blob 的結尾。

請參閱https://docs.microsoft.com/rest/api/storageservices/append-block

appendBlockFromURL(string, number, number, AppendBlobAppendBlockFromURLOptions)

[附加區塊] 作業會將新的資料區塊認可至現有附加 Blob 的結尾,其中內容是從來源 URL 讀取。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/append-block-from-url

create(AppendBlobCreateOptions)

建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。

請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob

createIfNotExists(AppendBlobCreateIfNotExistsOptions)

建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。 如果具有相同名稱的 Blob 已經存在,則現有 Blob 的內容會保持不變。

請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob

seal(AppendBlobSealOptions)

密封附加 Blob,使其唯讀。

withSnapshot(string)

建立與來源相同的新 AppendBlobClient 物件,但具有指定的快照集時間戳記。 提供 「」 會移除快照集,並將用戶端傳回基底 Blob。

繼承的方法

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

中止暫止的非同步複製 Blob 作業,並保留長度為零和完整中繼資料的目的地 Blob。 2012-02-12 版及更新版本。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/abort-copy-blob

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

以非同步方式將 Blob 複製到儲存體帳戶內的目的地。 這個方法會傳回長時間執行的作業輪詢器,可讓您無限期等候直到複本完成為止。 您也可以在輪詢器上呼叫 cancelOperation ,在複本完成之前先取消複本。 請注意,如果作業在第一個要求中完成,而且嘗試取消已完成的複本會導致擲回錯誤,將不會叫用 onProgress 回呼。

在 2012-02-12 版和更新版本中,複製 Blob 作業的來源可以是任何 Azure 儲存體帳戶中的認可 Blob。 從 2015-02-21 版開始,複製 Blob 作業的來源可以是任何 Azure 儲存體帳戶中的 Azure 檔案。 只有在 2012 年 6 月 7 日當天或之後所建立的儲存體帳戶,才可讓您在執行複製 Blob 作業時從另一個儲存體帳戶複製 Blob。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob

使用自動輪詢的範例:

const copyPoller = await blobClient.beginCopyFromURL('url');
const result = await copyPoller.pollUntilDone();

使用手動輪詢的範例:

const copyPoller = await blobClient.beginCopyFromURL('url');
while (!poller.isDone()) {
   await poller.poll();
}
const result = copyPoller.getResult();

使用進度更新的範例:

const copyPoller = await blobClient.beginCopyFromURL('url', {
  onProgress(state) {
    console.log(`Progress: ${state.copyProgress}`);
  }
});
const result = await copyPoller.pollUntilDone();

使用變更輪詢間隔的範例 (預設為 15 秒) :

const copyPoller = await blobClient.beginCopyFromURL('url', {
  intervalInMs: 1000 // poll blob every 1 second for copy progress
});
const result = await copyPoller.pollUntilDone();

使用複製取消的範例:

const copyPoller = await blobClient.beginCopyFromURL('url');
// cancel operation after starting it.
try {
  await copyPoller.cancelOperation();
  // calls to get the result now throw PollerCancelledError
  await copyPoller.getResult();
} catch (err) {
  if (err.name === 'PollerCancelledError') {
    console.log('The copy was cancelled.');
  }
}
createSnapshot(BlobCreateSnapshotOptions)

建立 Blob 的唯讀快照集。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob

delete(BlobDeleteOptions)

標記要刪除的指定 Blob 或快照集。 Blob 稍後會在記憶體回收時刪除。 請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

deleteIfExists(BlobDeleteOptions)

標記指定的 Blob 或快照集,如果存在,則為刪除。 Blob 稍後會在記憶體回收時刪除。 請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

刪除 Blob 上的不固定原則。

download(number, number, BlobDownloadOptions)

從系統讀取或下載 Blob,包括其中繼資料和屬性。 您也可以呼叫取得 Blob 來讀取快照集。

  • 在 Node.js 中,資料會傳回可讀取資料流程 readableStreamBody
  • 在瀏覽器中,資料會在 promise blobBody 中傳回

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

僅適用于NODE.JS執行時間。

平行下載 Azure Blob 至緩衝區。 位移和計數是選擇性的,如果未提供,則會下載整個 Blob。

警告:緩衝區只能在 32 位系統上支援大約一 GB 的檔案,或 64 位系統上大約兩 GB,因為Node.js/V8 的限制。 對於大於此大小的 Blob,請考慮 downloadToFile

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

僅適用于NODE.JS執行時間。

平行下載 Azure Blob 至緩衝區。 位移和計數是選擇性的,如果未提供,則會下載整個 Blob。

警告:緩衝區只能在 32 位系統上支援大約一 GB 的檔案,或 64 位系統上大約兩 GB,因為Node.js/V8 的限制。 對於大於此大小的 Blob,請考慮 downloadToFile

downloadToFile(string, number, number, BlobDownloadOptions)

僅適用于NODE.JS執行時間。

將 Azure Blob 下載至本機檔案。 如果指定的檔案路徑已經結束,就會失敗。 位移和計數是選擇性的,分別傳遞 0 和未定義,以下載整個 Blob。

exists(BlobExistsOptions)

如果此用戶端所代表的 Azure Blob 資源存在,則傳回 true;否則為 false。

注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的 Blob。 反之亦然,此函式完成後,其他用戶端或應用程式可能會新增新的 Blob。

generateSasUrl(BlobGenerateSasUrlOptions)

僅適用于使用共用金鑰認證建構的 BlobClient。

根據傳入的用戶端屬性和參數,產生 Blob 服務共用存取簽章 (SAS) URI。 SAS 是由用戶端的共用金鑰認證所簽署。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

getAppendBlobClient()

建立 AppendBlobClient 物件。

getBlobLeaseClient(string)

取得管理 Blob 上租用的 BlobLeaseClient

getBlockBlobClient()

建立 BlockBlobClient 物件。

getPageBlobClient()

建立 PageBlobClient 物件。

getProperties(BlobGetPropertiesOptions)

傳回 Blob 之所有使用者定義的中繼資料、標準 HTTP 屬性及系統屬性。 但不會傳回 Blob 的內容。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties

警告: metadata 回應中傳回的物件會以小寫顯示其索引鍵,即使原本包含大寫字元也一樣。 這與使用 選項列出 Blob includeMetadataContainerClient方法所傳回的中繼資料金鑰不同,此選項會保留其原始大小寫。

getTags(BlobGetTagsOptions)

取得與基礎 Blob 相關聯的標記。

setAccessTier(string, BlobSetTierOptions)

設定 Blob 上的階層。 在進階儲存體帳戶中的分頁 Blob 和 Blob 儲存體帳戶中的區塊 Blob 上,允許此作業 (本機備援儲存體) 。 進階分頁 Blob 的層會決定 Blob 的允許大小、IOPS 和頻寬。 區塊 Blob 的層會決定經常性存取/非經常性存取/封存儲存體類型。 這項作業不會更新 Blob 的 ETag。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-tier

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

在 Blob 上設定系統屬性。

如果未提供任何值,或未為指定的 Blob HTTP 標頭提供任何值,則會清除沒有值的這些 Blob HTTP 標頭。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

在 Blob 上設定不可變原則。

setLegalHold(boolean, BlobSetLegalHoldOptions)

在 Blob 上設定合法保存。

setMetadata(Metadata, BlobSetMetadataOptions)

將指定 Blob 的使用者定義中繼資料設為一或多個名稱/值配對。

如果未提供任何選項,或參數中未定義任何中繼資料,則會移除 Blob 中繼資料。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata

setTags(Tags, BlobSetTagsOptions)

設定基礎 Blob 上的標記。 Blob 最多可以有 10 個標記。 標記索引鍵必須介於 1 到 128 個字元之間。 標籤值必須介於 0 到 256 個字元之間。 有效的標記索引鍵和值字元包括小寫字母和大寫字母、數位 (0-9) 、空格 (' ') ,加上 ('+') 、減 ('-') 、句號 ('。') 、正斜線 ('/') 、冒號 (':') 、等於 ('=') ,以及底線 ('_') 。

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

同步複製來源 URL 作業會將 Blob 或網際網路資源複製到新的 Blob。 在複製完成之前,它不會傳迴響應。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url

undelete(BlobUndeleteOptions)

還原虛刪除 Blob 的內容和中繼資料,以及任何相關聯的虛刪除快照集。 只有 2017-07-29 版或更新版本才支援取消刪除 Blob。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob

withVersion(string)

建立指向此 Blob 版本的新 BlobClient 物件。 提供 「」 會移除 versionId,並將用戶端傳回基底 Blob。

建構函式詳細資料

AppendBlobClient(string, PipelineLike)

建立 AppendBlobClient 的實例。 此方法接受指向附加 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。

new AppendBlobClient(url: string, pipeline: PipelineLike)

參數

url

string

指向 Azure 儲存體附加 Blob 的 URL 字串,例如 「 https://myaccount.blob.core.windows.net/mycontainer/appendblob" ;。 如果使用 AnonymousCredential,您可以附加 SAS,例如 「 https://myaccount.blob.core.windows.net/mycontainer/appendblob?sasString" ;。 此方法接受指向 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 不過,如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。 例如名為 「my?blob%」 的 Blob,URL 應該是 「 https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25" ;。

pipeline
PipelineLike

呼叫 newPipeline () 以建立預設管線,或提供自訂管線。

AppendBlobClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

建立 AppendBlobClient 的實例。 此方法接受指向附加 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。

new AppendBlobClient(url: string, credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

參數

url

string

指向 Azure 儲存體附加 Blob 的 URL 字串,例如 「 https://myaccount.blob.core.windows.net/mycontainer/appendblob" ;。 如果使用 AnonymousCredential,您可以附加 SAS,例如 「 https://myaccount.blob.core.windows.net/mycontainer/appendblob?sasString" ;。 此方法接受指向 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 不過,如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。 例如名為 「my?blob%」 的 Blob,URL 應該是 「 https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25" ;。

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自封裝的 @azure/identity 認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。

options
StoragePipelineOptions

選擇性。 設定 HTTP 管線的選項。

AppendBlobClient(string, string, string, StoragePipelineOptions)

建立 AppendBlobClient 的實例。

new AppendBlobClient(connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)

參數

connectionString

string

帳戶連接字串或 Azure 儲存體帳戶的 SAS 連接字串。 [ 注意 - 帳戶連接字串只能用於NODE.JS執行時間。 ] 帳戶連接字串範例 -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net SAS 連接字串範例 - BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

containerName

string

容器名稱。

blobName

string

Blob 名稱。

options
StoragePipelineOptions

選擇性。 設定 HTTP 管線的選項。

屬性詳細資料

containerName

與 Blob 相關聯之儲存體容器的名稱。

string containerName

屬性值

string

name

Blob 的名稱。

string name

屬性值

string

繼承的屬性詳細資料

accountName

accountName: string

屬性值

string

繼承自BlobClient.accountName

credential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自套件的 @azure/identity 認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

屬性值

繼承自BlobClient.credential

url

編碼的 URL 字串值。

url: string

屬性值

string

繼承自BlobClient.url

方法詳細資料

appendBlock(HttpRequestBody, number, AppendBlobAppendBlockOptions)

將新的資料區塊認可至現有附加 Blob 的結尾。

請參閱https://docs.microsoft.com/rest/api/storageservices/append-block

function appendBlock(body: HttpRequestBody, contentLength: number, options?: AppendBlobAppendBlockOptions): Promise<AppendBlobAppendBlockResponse>

參數

body
HttpRequestBody

要附加的資料。

contentLength

number

主體的長度,以位元組為單位。

options
AppendBlobAppendBlockOptions

附加區塊作業的選項。

使用方式範例:

const content = "Hello World!";

// Create a new append blob and append data to the blob.
const newAppendBlobClient = containerClient.getAppendBlobClient("<blob name>");
await newAppendBlobClient.create();
await newAppendBlobClient.appendBlock(content, content.length);

// Append data to an existing append blob.
const existingAppendBlobClient = containerClient.getAppendBlobClient("<blob name>");
await existingAppendBlobClient.appendBlock(content, content.length);

傳回

appendBlockFromURL(string, number, number, AppendBlobAppendBlockFromURLOptions)

[附加區塊] 作業會將新的資料區塊認可至現有附加 Blob 的結尾,其中內容是從來源 URL 讀取。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/append-block-from-url

function appendBlockFromURL(sourceURL: string, sourceOffset: number, count: number, options?: AppendBlobAppendBlockFromURLOptions): Promise<AppendBlobAppendBlockFromUrlResponse>

參數

sourceURL

string

將做為複本來源之 Blob 的 URL。 相同儲存體帳戶中的來源 Blob 可以透過共用金鑰進行驗證。 不過,如果來源是另一個帳戶中的 Blob,則來源 Blob 必須是公用,或必須透過共用存取簽章進行驗證。 如果來源 Blob 是公用的,則不需要驗證才能執行作業。

sourceOffset

number

要附加的來源位移

count

number

要附加為區塊的位元組數目

傳回

create(AppendBlobCreateOptions)

建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。

請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob

function create(options?: AppendBlobCreateOptions): Promise<AppendBlobCreateResponse>

參數

options
AppendBlobCreateOptions

附加區塊建立作業的選項。

使用方式範例:

const appendBlobClient = containerClient.getAppendBlobClient("<blob name>");
await appendBlobClient.create();

傳回

createIfNotExists(AppendBlobCreateIfNotExistsOptions)

建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。 如果具有相同名稱的 Blob 已經存在,則現有 Blob 的內容會保持不變。

請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob

function createIfNotExists(options?: AppendBlobCreateIfNotExistsOptions): Promise<AppendBlobCreateIfNotExistsResponse>

參數

傳回

seal(AppendBlobSealOptions)

密封附加 Blob,使其唯讀。

function seal(options?: AppendBlobSealOptions): Promise<AppendBlobAppendBlockResponse>

參數

傳回

withSnapshot(string)

建立與來源相同的新 AppendBlobClient 物件,但具有指定的快照集時間戳記。 提供 「」 會移除快照集,並將用戶端傳回基底 Blob。

function withSnapshot(snapshot: string): AppendBlobClient

參數

snapshot

string

快照時間戳記。

傳回

新的 AppendBlobClient 物件與來源相同,但具有指定的快照集時間戳記。

繼承的方法的詳細資料

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

中止暫止的非同步複製 Blob 作業,並保留長度為零和完整中繼資料的目的地 Blob。 2012-02-12 版及更新版本。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/abort-copy-blob

function abortCopyFromURL(copyId: string, options?: BlobAbortCopyFromURLOptions): Promise<BlobAbortCopyFromURLResponse>

參數

copyId

string

複製來源 URL 作業的識別碼。

options
BlobAbortCopyFromURLOptions

Blob 中止複製 URL 作業的選擇性選項。

傳回

繼承自BlobClient.abortCopyFromURL

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

以非同步方式將 Blob 複製到儲存體帳戶內的目的地。 這個方法會傳回長時間執行的作業輪詢器,可讓您無限期等候直到複本完成為止。 您也可以在輪詢器上呼叫 cancelOperation ,在複本完成之前先取消複本。 請注意,如果作業在第一個要求中完成,而且嘗試取消已完成的複本會導致擲回錯誤,將不會叫用 onProgress 回呼。

在 2012-02-12 版和更新版本中,複製 Blob 作業的來源可以是任何 Azure 儲存體帳戶中的認可 Blob。 從 2015-02-21 版開始,複製 Blob 作業的來源可以是任何 Azure 儲存體帳戶中的 Azure 檔案。 只有在 2012 年 6 月 7 日當天或之後所建立的儲存體帳戶,才可讓您在執行複製 Blob 作業時從另一個儲存體帳戶複製 Blob。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob

使用自動輪詢的範例:

const copyPoller = await blobClient.beginCopyFromURL('url');
const result = await copyPoller.pollUntilDone();

使用手動輪詢的範例:

const copyPoller = await blobClient.beginCopyFromURL('url');
while (!poller.isDone()) {
   await poller.poll();
}
const result = copyPoller.getResult();

使用進度更新的範例:

const copyPoller = await blobClient.beginCopyFromURL('url', {
  onProgress(state) {
    console.log(`Progress: ${state.copyProgress}`);
  }
});
const result = await copyPoller.pollUntilDone();

使用變更輪詢間隔的範例 (預設為 15 秒) :

const copyPoller = await blobClient.beginCopyFromURL('url', {
  intervalInMs: 1000 // poll blob every 1 second for copy progress
});
const result = await copyPoller.pollUntilDone();

使用複製取消的範例:

const copyPoller = await blobClient.beginCopyFromURL('url');
// cancel operation after starting it.
try {
  await copyPoller.cancelOperation();
  // calls to get the result now throw PollerCancelledError
  await copyPoller.getResult();
} catch (err) {
  if (err.name === 'PollerCancelledError') {
    console.log('The copy was cancelled.');
  }
}
function beginCopyFromURL(copySource: string, options?: BlobBeginCopyFromURLOptions): Promise<PollerLikeWithCancellation<PollOperationState<BlobBeginCopyFromURLResponse>, BlobBeginCopyFromURLResponse>>

參數

copySource

string

來源 Azure Blob/檔案的 URL。

options
BlobBeginCopyFromURLOptions

Blob 開始從 URL 複製作業的選擇性選項。

傳回

繼承自BlobClient.beginCopyFromURL

createSnapshot(BlobCreateSnapshotOptions)

建立 Blob 的唯讀快照集。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob

function createSnapshot(options?: BlobCreateSnapshotOptions): Promise<BlobCreateSnapshotResponse>

參數

options
BlobCreateSnapshotOptions

Blob 建立快照集作業的選擇性選項。

傳回

繼承自BlobClient.createSnapshot

delete(BlobDeleteOptions)

標記要刪除的指定 Blob 或快照集。 Blob 稍後會在記憶體回收時刪除。 請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

function delete(options?: BlobDeleteOptions): Promise<BlobDeleteResponse>

參數

options
BlobDeleteOptions

Blob 刪除作業的選擇性選項。

傳回

繼承自BlobClient.delete

deleteIfExists(BlobDeleteOptions)

標記指定的 Blob 或快照集,如果存在,則為刪除。 Blob 稍後會在記憶體回收時刪除。 請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob

function deleteIfExists(options?: BlobDeleteOptions): Promise<BlobDeleteIfExistsResponse>

參數

options
BlobDeleteOptions

Blob 刪除作業的選擇性選項。

傳回

繼承自BlobClient.deleteIfExists

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

刪除 Blob 上的不固定原則。

function deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions): Promise<BlobDeleteImmutabilityPolicyResponse>

參數

options
BlobDeleteImmutabilityPolicyOptions

在 Blob 上刪除不變性原則的選擇性選項。

傳回

繼承自BlobClient.deleteImmutabilityPolicy

download(number, number, BlobDownloadOptions)

從系統讀取或下載 Blob,包括其中繼資料和屬性。 您也可以呼叫取得 Blob 來讀取快照集。

  • 在 Node.js 中,資料會傳回可讀取資料流程 readableStreamBody
  • 在瀏覽器中,資料會在 promise blobBody 中傳回

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob

function download(offset?: number, count?: number, options?: BlobDownloadOptions): Promise<BlobDownloadResponseParsed>

參數

offset

number

要下載的 Blob 位置,大於或等於 0

count

number

要下載的資料量大於 0。 會在未定義時下載至結尾

options
BlobDownloadOptions

Blob 下載作業的選擇性選項。

範例使用方式 (Node.js) :

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await streamToBuffer(downloadBlockBlobResponse.readableStreamBody);
console.log("Downloaded blob content:", downloaded.toString());

async function streamToBuffer(readableStream) {
return new Promise((resolve, reject) => {
const chunks = [];
readableStream.on("data", (data) => {
chunks.push(data instanceof Buffer ? data : Buffer.from(data));
});
readableStream.on("end", () => {
resolve(Buffer.concat(chunks));
});
readableStream.on("error", reject);
});
}

瀏覽器) 的範例使用方式 (:

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await blobToString(await downloadBlockBlobResponse.blobBody);
console.log(
  "Downloaded blob content",
  downloaded
);

async function blobToString(blob: Blob): Promise<string> {
  const fileReader = new FileReader();
  return new Promise<string>((resolve, reject) => {
    fileReader.onloadend = (ev: any) => {
      resolve(ev.target!.result);
    };
    fileReader.onerror = reject;
    fileReader.readAsText(blob);
  });
}

傳回

繼承自BlobClient.download

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

僅適用于NODE.JS執行時間。

平行下載 Azure Blob 至緩衝區。 位移和計數是選擇性的,如果未提供,則會下載整個 Blob。

警告:緩衝區只能在 32 位系統上支援大約一 GB 的檔案,或 64 位系統上大約兩 GB,因為Node.js/V8 的限制。 對於大於此大小的 Blob,請考慮 downloadToFile

function downloadToBuffer(buffer: Buffer, offset?: number, count?: number, options?: BlobDownloadToBufferOptions): Promise<Buffer>

參數

buffer

Buffer

要填滿的緩衝區長度必須大於計數

offset

number

區塊 Blob 以位元組) 下載 (的位置

count

number

下載) 位元組 (多少資料。 傳遞未定義時,將會下載至結尾

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

傳回

Promise<Buffer>

繼承自BlobClient.downloadToBuffer

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

僅適用于NODE.JS執行時間。

平行下載 Azure Blob 至緩衝區。 位移和計數是選擇性的,如果未提供,則會下載整個 Blob。

警告:緩衝區只能在 32 位系統上支援大約一 GB 的檔案,或 64 位系統上大約兩 GB,因為Node.js/V8 的限制。 對於大於此大小的 Blob,請考慮 downloadToFile

function downloadToBuffer(offset?: number, count?: number, options?: BlobDownloadToBufferOptions): Promise<Buffer>

參數

offset

number

區塊 Blob 以位元組) 下載 (的位置

count

number

下載) 位元組 (多少資料。 傳遞未定義時,將會下載至結尾

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

傳回

Promise<Buffer>

繼承自BlobClient.downloadToBuffer

downloadToFile(string, number, number, BlobDownloadOptions)

僅適用于NODE.JS執行時間。

將 Azure Blob 下載至本機檔案。 如果指定的檔案路徑已經結束,就會失敗。 位移和計數是選擇性的,分別傳遞 0 和未定義,以下載整個 Blob。

function downloadToFile(filePath: string, offset?: number, count?: number, options?: BlobDownloadOptions): Promise<BlobDownloadResponseParsed>

參數

filePath

string

offset

number

要下載之區塊 Blob 的位置。

count

number

要下載的資料量。 將會在傳遞未定義時下載至結尾。

options
BlobDownloadOptions

Blob 下載選項的選項。

傳回

Blob 下載作業的回應資料,但已將 readableStreamBody 設定為未定義,因為其內容已經讀取並寫入指定路徑的本機檔案中。

繼承自BlobClient.downloadToFile

exists(BlobExistsOptions)

如果此用戶端所代表的 Azure Blob 資源存在,則傳回 true;否則為 false。

注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的 Blob。 反之亦然,此函式完成後,其他用戶端或應用程式可能會新增新的 Blob。

function exists(options?: BlobExistsOptions): Promise<boolean>

參數

options
BlobExistsOptions

存在作業的選項。

傳回

Promise<boolean>

繼承自BlobClient.exists

generateSasUrl(BlobGenerateSasUrlOptions)

僅適用于使用共用金鑰認證建構的 BlobClient。

根據傳入的用戶端屬性和參數,產生 Blob 服務共用存取簽章 (SAS) URI。 SAS 是由用戶端的共用金鑰認證所簽署。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

function generateSasUrl(options: BlobGenerateSasUrlOptions): Promise<string>

參數

options
BlobGenerateSasUrlOptions

選用參數。

傳回

Promise<string>

由此用戶端所代表資源的 URI 所組成的 SAS URI,後面接著產生的 SAS 權杖。

繼承自BlobClient.generateSasUrl

getAppendBlobClient()

建立 AppendBlobClient 物件。

function getAppendBlobClient(): AppendBlobClient

傳回

繼承自BlobClient.getAppendBlobClient

getBlobLeaseClient(string)

取得管理 Blob 上租用的 BlobLeaseClient

function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient

參數

proposeLeaseId

string

初始建議的租用識別碼。

傳回

新的 BlobLeaseClient 物件,用於管理 Blob 上的租用。

繼承自BlobClient.getBlobLeaseClient

getBlockBlobClient()

建立 BlockBlobClient 物件。

function getBlockBlobClient(): BlockBlobClient

傳回

繼承自BlobClient.getBlockBlobClient

getPageBlobClient()

建立 PageBlobClient 物件。

function getPageBlobClient(): PageBlobClient

傳回

繼承自BlobClient.getPageBlobClient

getProperties(BlobGetPropertiesOptions)

傳回 Blob 之所有使用者定義的中繼資料、標準 HTTP 屬性及系統屬性。 但不會傳回 Blob 的內容。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties

警告: metadata 回應中傳回的物件會以小寫顯示其索引鍵,即使原本包含大寫字元也一樣。 這與使用 選項列出 Blob includeMetadataContainerClient方法所傳回的中繼資料金鑰不同,此選項會保留其原始大小寫。

function getProperties(options?: BlobGetPropertiesOptions): Promise<BlobGetPropertiesResponse>

參數

options
BlobGetPropertiesOptions

取得屬性作業的選擇性選項。

傳回

繼承自BlobClient.getProperties

getTags(BlobGetTagsOptions)

取得與基礎 Blob 相關聯的標記。

function getTags(options?: BlobGetTagsOptions): Promise<BlobGetTagsResponse>

參數

傳回

繼承自BlobClient.getTags

setAccessTier(string, BlobSetTierOptions)

設定 Blob 上的階層。 在進階儲存體帳戶中的分頁 Blob 和 Blob 儲存體帳戶中的區塊 Blob 上,允許此作業 (本機備援儲存體) 。 進階分頁 Blob 的層會決定 Blob 的允許大小、IOPS 和頻寬。 區塊 Blob 的層會決定經常性存取/非經常性存取/封存儲存體類型。 這項作業不會更新 Blob 的 ETag。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-tier

function setAccessTier(tier: string, options?: BlobSetTierOptions): Promise<BlobSetTierResponse>

參數

tier

string

要設定于 Blob 上的階層。 有效值為經常性存取、非經常性存取或封存。

options
BlobSetTierOptions

Blob 設定層作業的選擇性選項。

傳回

繼承自BlobClient.setAccessTier

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

在 Blob 上設定系統屬性。

如果未提供任何值,或未為指定的 Blob HTTP 標頭提供任何值,則會清除沒有值的這些 Blob HTTP 標頭。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties

function setHTTPHeaders(blobHTTPHeaders?: BlobHTTPHeaders, options?: BlobSetHTTPHeadersOptions): Promise<BlobSetHTTPHeadersResponse>

參數

blobHTTPHeaders
BlobHTTPHeaders

如果未提供任何值,或未為指定的 Blob HTTP 標頭提供任何值,則會清除沒有值的這些 Blob HTTP 標頭。 要設定的通用標頭是 blobContentType 讓瀏覽器根據檔案類型提供功能。

options
BlobSetHTTPHeadersOptions

Blob 設定 HTTP 標頭作業的選擇性選項。

傳回

繼承自BlobClient.setHTTPHeaders

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

在 Blob 上設定不可變原則。

function setImmutabilityPolicy(immutabilityPolicy: BlobImmutabilityPolicy, options?: BlobSetImmutabilityPolicyOptions): Promise<BlobSetImmutabilityPolicyResponse>

參數

immutabilityPolicy
BlobImmutabilityPolicy
options
BlobSetImmutabilityPolicyOptions

在 Blob 上設定不變性原則的選擇性選項。

傳回

繼承自BlobClient.setImmutabilityPolicy

setLegalHold(boolean, BlobSetLegalHoldOptions)

在 Blob 上設定合法保存。

function setLegalHold(legalHoldEnabled: boolean, options?: BlobSetLegalHoldOptions): Promise<BlobSetLegalHoldResponse>

參數

legalHoldEnabled

boolean

options
BlobSetLegalHoldOptions

在 Blob 上設定合法保留的選擇性選項。

傳回

繼承自BlobClient.setLegalHold

setMetadata(Metadata, BlobSetMetadataOptions)

將指定 Blob 的使用者定義中繼資料設為一或多個名稱/值配對。

如果未提供任何選項,或參數中未定義任何中繼資料,則會移除 Blob 中繼資料。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata

function setMetadata(metadata?: Metadata, options?: BlobSetMetadataOptions): Promise<BlobSetMetadataResponse>

參數

metadata
Metadata

以此值取代現有的中繼資料。 如果未提供任何值,則會移除現有的中繼資料。

options
BlobSetMetadataOptions

設定中繼資料作業的選擇性選項。

傳回

繼承自BlobClient.setMetadata

setTags(Tags, BlobSetTagsOptions)

設定基礎 Blob 上的標記。 Blob 最多可以有 10 個標記。 標記索引鍵必須介於 1 到 128 個字元之間。 標籤值必須介於 0 到 256 個字元之間。 有效的標記索引鍵和值字元包括小寫字母和大寫字母、數位 (0-9) 、空格 (' ') ,加上 ('+') 、減 ('-') 、句號 ('。') 、正斜線 ('/') 、冒號 (':') 、等於 ('=') ,以及底線 ('_') 。

function setTags(tags: Tags, options?: BlobSetTagsOptions): Promise<BlobSetTagsResponse>

參數

tags
Tags

傳回

繼承自BlobClient.setTags

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

同步複製來源 URL 作業會將 Blob 或網際網路資源複製到新的 Blob。 在複製完成之前,它不會傳迴響應。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url

function syncCopyFromURL(copySource: string, options?: BlobSyncCopyFromURLOptions): Promise<BlobCopyFromURLResponse>

參數

copySource

string

要從複製的來源 URL、共用存取簽章 (SAS) 可能需要進行驗證

傳回

繼承自BlobClient.syncCopyFromURL

undelete(BlobUndeleteOptions)

還原虛刪除 Blob 的內容和中繼資料,以及任何相關聯的虛刪除快照集。 只有 2017-07-29 版或更新版本才支援取消刪除 Blob。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob

function undelete(options?: BlobUndeleteOptions): Promise<BlobUndeleteResponse>

參數

options
BlobUndeleteOptions

Blob 取消刪除作業的選擇性選項。

傳回

繼承自BlobClient.undelete

withVersion(string)

建立指向此 Blob 版本的新 BlobClient 物件。 提供 「」 會移除 versionId,並將用戶端傳回基底 Blob。

function withVersion(versionId: string): BlobClient

參數

versionId

string

versionId。

傳回

指向此 Blob 版本的新 BlobClient 物件。

繼承自BlobClient.withVersion