Share via


PageBlobClient class

PageBlobClient 會定義一組適用于分頁 Blob 的作業。

Extends

建構函式

PageBlobClient(string, PipelineLike)

建立 PageBlobClient 的實例。

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

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

PageBlobClient(string, string, string, StoragePipelineOptions)

建立 PageBlobClient 的實例。

屬性

containerName

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

name

Blob 的名稱。

繼承的屬性

accountName
credential

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

url

編碼的 URL 字串值。

方法

clearPages(number, number, PageBlobClearPagesOptions)

從分頁 Blob 釋放指定的頁面。

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

create(number, PageBlobCreateOptions)

建立指定長度的分頁 Blob。 呼叫 uploadPages 將資料上傳至分頁 Blob。

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

createIfNotExists(number, PageBlobCreateIfNotExistsOptions)

建立指定長度的分頁 Blob。 呼叫 uploadPages 將資料上傳至分頁 Blob。 如果具有相同名稱的 Blob 已經存在,則現有 Blob 的內容會保持不變。

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

getPageRanges(number, number, PageBlobGetPageRangesOptions)

傳回分頁 Blob 或分頁 Blob 快照集的有效頁面範圍清單。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

getPageRangesDiff(number, number, string, PageBlobGetPageRangesDiffOptions)

取得指定快照集與這個分頁 Blob 之間不同之頁面範圍的集合。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

getPageRangesDiffForManagedDisks(number, number, string, PageBlobGetPageRangesDiffOptions)

取得指定快照集與受控磁片這個分頁 Blob 之間差異的頁面範圍集合。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

listPageRanges(number, number, PageBlobListPageRangesOptions)

傳回非同步反覆運算器,以列出分頁 Blob 的頁面範圍。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

.byPage () 會傳回非同步反覆運算器,以列出分頁 Blob 的頁面範圍。

使用語法的 for await 範例:

// Get the pageBlobClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>").getPageBlobClient("<your-blob-name>");`
let i = 1;
for await (const pageRange of pageBlobClient.listPageRanges()) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = pageBlobClient.listPageRanges();
let pageRangeItem = await iter.next();
while (!pageRangeItem.done) {
  console.log(`Page range ${i++}: ${pageRangeItem.value.start} - ${pageRangeItem.value.end}, IsClear: ${pageRangeItem.value.isClear}`);
  pageRangeItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of pageBlobClient.listPageRanges().byPage({ maxPageSize: 20 })) {
  for (const pageRange of response) {
    console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = pageBlobClient.listPageRanges().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 page ranges
for (const pageRange of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = pageBlobClient.listPageRanges().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 page ranges
for (const blob of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}
listPageRangesDiff(number, number, string, PageBlobListPageRangesDiffOptions)

傳回非同步反覆運算器,以列出指定快照集和這個分頁 Blob 之間不同的頁面範圍清單。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

.byPage () 會傳回非同步反覆運算器,以列出指定快照集與此頁面 Blob 之間不同的頁面範圍清單。

使用語法的 for await 範例:

// Get the pageBlobClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>").getPageBlobClient("<your-blob-name>");`
let i = 1;
for await (const pageRange of pageBlobClient.listPageRangesDiff()) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = pageBlobClient.listPageRangesDiff();
let pageRangeItem = await iter.next();
while (!pageRangeItem.done) {
  console.log(`Page range ${i++}: ${pageRangeItem.value.start} - ${pageRangeItem.value.end}, IsClear: ${pageRangeItem.value.isClear}`);
  pageRangeItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of pageBlobClient.listPageRangesDiff().byPage({ maxPageSize: 20 })) {
  for (const pageRange of response) {
    console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = pageBlobClient.listPageRangesDiff().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 page ranges
for (const pageRange of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = pageBlobClient.listPageRangesDiff().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 page ranges
for (const blob of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}
resize(number, PageBlobResizeOptions)

將分頁 Blob 大小調整為指定的大小 (,必須是 512) 的倍數。

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

startCopyIncremental(string, PageBlobStartCopyIncrementalOptions)

開始作業,以從單一分頁 Blob 的快照集開始累加複製至這個分頁 Blob。 系統會複製快照集,如此一來,只會將先前複製快照集之間的差異變更傳送至目的地。 複製的快照集是原始快照集的完整複本,而且可以像往常一樣讀取或複製。

請參閱請參閱 https://docs.microsoft.com/rest/api/storageservices/incremental-copy-blobhttps://docs.microsoft.com/en-us/azure/virtual-machines/windows/incremental-snapshots

updateSequenceNumber(SequenceNumberActionType, number, PageBlobUpdateSequenceNumberOptions)

設定分頁 Blob 的序號。

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

uploadPages(HttpRequestBody, number, number, PageBlobUploadPagesOptions)

將 1 或多個頁面寫入分頁 Blob。 開始和結束位移必須是 512 的倍數。

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

uploadPagesFromURL(string, number, number, number, PageBlobUploadPagesFromURLOptions)

上傳頁面作業會將頁面範圍寫入至從 URL 讀取內容的分頁 Blob。

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

withSnapshot(string)

建立與來源相同的新 PageBlobClient 物件,但具有指定的快照集時間戳記。 提供 「」 會移除快照集,並將用戶端傳回基底 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。

建構函式詳細資料

PageBlobClient(string, PipelineLike)

建立 PageBlobClient 的實例。

new PageBlobClient(url: string, pipeline: PipelineLike)

參數

url

string

指向 Azure 儲存體分頁 Blob 的 URL 字串,例如 「 https://myaccount.blob.core.windows.net/mycontainer/pageblob" ;。 如果使用 AnonymousCredential,您可以附加 SAS,例如 「 https://myaccount.blob.core.windows.net/mycontainer/pageblob?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 () 以建立預設管線,或提供自訂管線。

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

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

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

參數

url

string

指向 Azure 儲存體分頁 Blob 的用戶端字串,例如 「 https://myaccount.blob.core.windows.net/mycontainer/pageblob" ;。 如果使用 AnonymousCredential,您可以附加 SAS,例如 「 https://myaccount.blob.core.windows.net/mycontainer/pageblob?sasString" ;。

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

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

options
StoragePipelineOptions

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

PageBlobClient(string, string, string, StoragePipelineOptions)

建立 PageBlobClient 的實例。

new PageBlobClient(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

方法詳細資料

clearPages(number, number, PageBlobClearPagesOptions)

從分頁 Blob 釋放指定的頁面。

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

function clearPages(offset?: number, count?: number, options?: PageBlobClearPagesOptions): Promise<PageBlobClearPagesResponse>

參數

offset

number

要清除的頁面起始位元組位置。

count

number

要清除的位元組數目。

options
PageBlobClearPagesOptions

分頁 Blob 清除分頁作業的選項。

傳回

分頁 Blob 清除分頁作業的回應資料。

create(number, PageBlobCreateOptions)

建立指定長度的分頁 Blob。 呼叫 uploadPages 將資料上傳至分頁 Blob。

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

function create(size: number, options?: PageBlobCreateOptions): Promise<PageBlobCreateResponse>

參數

size

number

分頁 Blob 的大小。

options
PageBlobCreateOptions

分頁 Blob 建立作業的選項。

傳回

分頁 Blob 建立作業的回應資料。

createIfNotExists(number, PageBlobCreateIfNotExistsOptions)

建立指定長度的分頁 Blob。 呼叫 uploadPages 將資料上傳至分頁 Blob。 如果具有相同名稱的 Blob 已經存在,則現有 Blob 的內容會保持不變。

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

function createIfNotExists(size: number, options?: PageBlobCreateIfNotExistsOptions): Promise<PageBlobCreateIfNotExistsResponse>

參數

size

number

分頁 Blob 的大小。

傳回

getPageRanges(number, number, PageBlobGetPageRangesOptions)

傳回分頁 Blob 或分頁 Blob 快照集的有效頁面範圍清單。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

function getPageRanges(offset?: number, count?: number, options?: PageBlobGetPageRangesOptions): Promise<PageBlobGetPageRangesResponse>

參數

offset

number

頁面範圍的起始位元組位置。

count

number

要取得的位元組數目。

options
PageBlobGetPageRangesOptions

分頁 Blob 取得範圍作業的選項。

傳回

分頁 Blob 取得範圍作業的回應資料。

getPageRangesDiff(number, number, string, PageBlobGetPageRangesDiffOptions)

取得指定快照集與這個分頁 Blob 之間不同之頁面範圍的集合。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

function getPageRangesDiff(offset: number, count: number, prevSnapshot: string, options?: PageBlobGetPageRangesDiffOptions): Promise<PageBlobGetPageRangesDiffResponse>

參數

offset

number

分頁 Blob 的起始位元組位置

count

number

要取得範圍差異的位元組數目。

prevSnapshot

string

擷取差異的快照集時間戳記。

options
PageBlobGetPageRangesDiffOptions

分頁 Blob 取得頁面範圍差異作業的選項。

傳回

分頁 Blob 取得頁面範圍差異作業的回應資料。

getPageRangesDiffForManagedDisks(number, number, string, PageBlobGetPageRangesDiffOptions)

取得指定快照集與受控磁片這個分頁 Blob 之間差異的頁面範圍集合。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

function getPageRangesDiffForManagedDisks(offset: number, count: number, prevSnapshotUrl: string, options?: PageBlobGetPageRangesDiffOptions): Promise<PageBlobGetPageRangesDiffResponse>

參數

offset

number

分頁 Blob 的起始位元組位置

count

number

要取得範圍差異的位元組數目。

prevSnapshotUrl

string

擷取差異的快照集 URL。

options
PageBlobGetPageRangesDiffOptions

分頁 Blob 取得頁面範圍差異作業的選項。

傳回

分頁 Blob 取得頁面範圍差異作業的回應資料。

listPageRanges(number, number, PageBlobListPageRangesOptions)

傳回非同步反覆運算器,以列出分頁 Blob 的頁面範圍。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

.byPage () 會傳回非同步反覆運算器,以列出分頁 Blob 的頁面範圍。

使用語法的 for await 範例:

// Get the pageBlobClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>").getPageBlobClient("<your-blob-name>");`
let i = 1;
for await (const pageRange of pageBlobClient.listPageRanges()) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = pageBlobClient.listPageRanges();
let pageRangeItem = await iter.next();
while (!pageRangeItem.done) {
  console.log(`Page range ${i++}: ${pageRangeItem.value.start} - ${pageRangeItem.value.end}, IsClear: ${pageRangeItem.value.isClear}`);
  pageRangeItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of pageBlobClient.listPageRanges().byPage({ maxPageSize: 20 })) {
  for (const pageRange of response) {
    console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = pageBlobClient.listPageRanges().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 page ranges
for (const pageRange of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = pageBlobClient.listPageRanges().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 page ranges
for (const blob of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}
function listPageRanges(offset?: number, count?: number, options?: PageBlobListPageRangesOptions): PagedAsyncIterableIterator<PageRangeInfo, PageBlobGetPageRangesResponseModel, PageSettings>

參數

offset

number

頁面範圍的起始位元組位置。

count

number

要取得的位元組數目。

options
PageBlobListPageRangesOptions

分頁 Blob 取得範圍作業的選項。

傳回

支援分頁的 asyncIterableIterator。

listPageRangesDiff(number, number, string, PageBlobListPageRangesDiffOptions)

傳回非同步反覆運算器,以列出指定快照集和這個分頁 Blob 之間不同的頁面範圍清單。

請參閱https://docs.microsoft.com/rest/api/storageservices/get-page-ranges

.byPage () 會傳回非同步反覆運算器,以列出指定快照集與此頁面 Blob 之間不同的頁面範圍清單。

使用語法的 for await 範例:

// Get the pageBlobClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>").getPageBlobClient("<your-blob-name>");`
let i = 1;
for await (const pageRange of pageBlobClient.listPageRangesDiff()) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = pageBlobClient.listPageRangesDiff();
let pageRangeItem = await iter.next();
while (!pageRangeItem.done) {
  console.log(`Page range ${i++}: ${pageRangeItem.value.start} - ${pageRangeItem.value.end}, IsClear: ${pageRangeItem.value.isClear}`);
  pageRangeItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of pageBlobClient.listPageRangesDiff().byPage({ maxPageSize: 20 })) {
  for (const pageRange of response) {
    console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = pageBlobClient.listPageRangesDiff().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 page ranges
for (const pageRange of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = pageBlobClient.listPageRangesDiff().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 page ranges
for (const blob of response) {
  console.log(`Page range ${i++}: ${pageRange.start} - ${pageRange.end}`);
}
function listPageRangesDiff(offset: number, count: number, prevSnapshot: string, options?: PageBlobListPageRangesDiffOptions): PagedAsyncIterableIterator<PageRangeInfo, PageBlobGetPageRangesDiffResponseModel, PageSettings>

參數

offset

number

頁面範圍的起始位元組位置。

count

number

要取得的位元組數目。

prevSnapshot

string

擷取差異的快照集時間戳記。

options
PageBlobListPageRangesDiffOptions

分頁 Blob 取得範圍作業的選項。

傳回

支援分頁的 asyncIterableIterator。

resize(number, PageBlobResizeOptions)

將分頁 Blob 大小調整為指定的大小 (,必須是 512) 的倍數。

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

function resize(size: number, options?: PageBlobResizeOptions): Promise<PageBlobResizeResponse>

參數

size

number

目標大小

options
PageBlobResizeOptions

分頁 Blob 調整大小作業的選項。

傳回

分頁 Blob 調整大小作業的回應資料。

startCopyIncremental(string, PageBlobStartCopyIncrementalOptions)

開始作業,以從單一分頁 Blob 的快照集開始累加複製至這個分頁 Blob。 系統會複製快照集,如此一來,只會將先前複製快照集之間的差異變更傳送至目的地。 複製的快照集是原始快照集的完整複本,而且可以像往常一樣讀取或複製。

請參閱請參閱 https://docs.microsoft.com/rest/api/storageservices/incremental-copy-blobhttps://docs.microsoft.com/en-us/azure/virtual-machines/windows/incremental-snapshots

function startCopyIncremental(copySource: string, options?: PageBlobStartCopyIncrementalOptions): Promise<PageBlobCopyIncrementalResponse>

參數

copySource

string

指定來源分頁 Blob 快照集的名稱。 例如, https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=

options
PageBlobStartCopyIncrementalOptions

分頁 Blob 複製累加作業的選項。

傳回

分頁 Blob 複製累加作業的回應資料。

updateSequenceNumber(SequenceNumberActionType, number, PageBlobUpdateSequenceNumberOptions)

設定分頁 Blob 的序號。

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

function updateSequenceNumber(sequenceNumberAction: SequenceNumberActionType, sequenceNumber?: number, options?: PageBlobUpdateSequenceNumberOptions): Promise<PageBlobUpdateSequenceNumberResponse>

參數

sequenceNumberAction
SequenceNumberActionType

指出服務應該如何修改 Blob 的序號。

sequenceNumber

number

如果 sequenceNumberAction 為 max 或 update,則為必要項

options
PageBlobUpdateSequenceNumberOptions

分頁 Blob 更新序號作業的選項。

傳回

分頁 Blob 更新序號作業的回應資料。

uploadPages(HttpRequestBody, number, number, PageBlobUploadPagesOptions)

將 1 或多個頁面寫入分頁 Blob。 開始和結束位移必須是 512 的倍數。

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

function uploadPages(body: HttpRequestBody, offset: number, count: number, options?: PageBlobUploadPagesOptions): Promise<PageBlobUploadPagesResponse>

參數

body
HttpRequestBody

要上傳的資料

offset

number

目的地分頁 Blob 的位移

count

number

本文的內容長度,以及要上傳的位元組數目

options
PageBlobUploadPagesOptions

分頁 Blob 上傳頁面作業的選項。

傳回

分頁 Blob 上傳頁面作業的回應資料。

uploadPagesFromURL(string, number, number, number, PageBlobUploadPagesFromURLOptions)

上傳頁面作業會將頁面範圍寫入至從 URL 讀取內容的分頁 Blob。

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

function uploadPagesFromURL(sourceURL: string, sourceOffset: number, destOffset: number, count: number, options?: PageBlobUploadPagesFromURLOptions): Promise<PageBlobUploadPagesFromURLResponse>

參數

sourceURL

string

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

sourceOffset

number

要複製的來源位移。 傳遞 0 以從來源分頁 Blob 開頭複製

destOffset

number

目的地分頁 Blob 的位移

count

number

要從來源分頁 Blob 上傳的位元組數目

傳回

withSnapshot(string)

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

function withSnapshot(snapshot: string): PageBlobClient

參數

snapshot

string

快照時間戳記。

傳回

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

繼承的方法的詳細資料

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