AppendBlobClient class
AppendBlobClient 會定義一組適用于附加 Blob 的作業。
- Extends
建構函式
Append |
建立 AppendBlobClient 的實例。 此方法接受指向附加 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。 |
Append |
建立 AppendBlobClient 的實例。 此方法接受指向附加 Blob 的編碼 URL 或非編碼 URL。 編碼的 URL 字串不會逸出兩次,只會逸出 URL 路徑中的特殊字元。 如果 Blob 名稱包含 ? 或 %blob 名稱必須在 URL 中編碼。 |
Append |
建立 AppendBlobClient 的實例。 |
屬性
container |
與 Blob 相關聯之儲存體容器的名稱。 |
name | Blob 的名稱。 |
繼承的屬性
account |
|
credential | 例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自套件的 |
url | 編碼的 URL 字串值。 |
方法
append |
將新的資料區塊認可至現有附加 Blob 的結尾。 請參閱https://docs.microsoft.com/rest/api/storageservices/append-block |
append |
[附加區塊] 作業會將新的資料區塊認可至現有附加 Blob 的結尾,其中內容是從來源 URL 讀取。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/append-block-from-url |
create(Append |
建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。 請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob |
create |
建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。 如果具有相同名稱的 Blob 已經存在,則現有 Blob 的內容會保持不變。 請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob |
seal(Append |
密封附加 Blob,使其唯讀。 |
with |
建立與來源相同的新 AppendBlobClient 物件,但具有指定的快照集時間戳記。 提供 「」 會移除快照集,並將用戶端傳回基底 Blob。 |
繼承的方法
abort |
中止暫止的非同步複製 Blob 作業,並保留長度為零和完整中繼資料的目的地 Blob。 2012-02-12 版及更新版本。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/abort-copy-blob |
begin |
以非同步方式將 Blob 複製到儲存體帳戶內的目的地。
這個方法會傳回長時間執行的作業輪詢器,可讓您無限期等候直到複本完成為止。
您也可以在輪詢器上呼叫 在 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 使用自動輪詢的範例:
使用手動輪詢的範例:
使用進度更新的範例:
使用變更輪詢間隔的範例 (預設為 15 秒) :
使用複製取消的範例:
|
create |
建立 Blob 的唯讀快照集。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob |
delete(Blob |
標記要刪除的指定 Blob 或快照集。 Blob 稍後會在記憶體回收時刪除。 請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob |
delete |
標記指定的 Blob 或快照集,如果存在,則為刪除。 Blob 稍後會在記憶體回收時刪除。 請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob |
delete |
刪除 Blob 上的不固定原則。 |
download(number, number, Blob |
從系統讀取或下載 Blob,包括其中繼資料和屬性。 您也可以呼叫取得 Blob 來讀取快照集。
請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob |
download |
僅適用于NODE.JS執行時間。 平行下載 Azure Blob 至緩衝區。 位移和計數是選擇性的,如果未提供,則會下載整個 Blob。 警告:緩衝區只能在 32 位系統上支援大約一 GB 的檔案,或 64 位系統上大約兩 GB,因為Node.js/V8 的限制。 對於大於此大小的 Blob,請考慮 downloadToFile。 |
download |
僅適用于NODE.JS執行時間。 平行下載 Azure Blob 至緩衝區。 位移和計數是選擇性的,如果未提供,則會下載整個 Blob。 警告:緩衝區只能在 32 位系統上支援大約一 GB 的檔案,或 64 位系統上大約兩 GB,因為Node.js/V8 的限制。 對於大於此大小的 Blob,請考慮 downloadToFile。 |
download |
僅適用于NODE.JS執行時間。 將 Azure Blob 下載至本機檔案。 如果指定的檔案路徑已經結束,就會失敗。 位移和計數是選擇性的,分別傳遞 0 和未定義,以下載整個 Blob。 |
exists(Blob |
如果此用戶端所代表的 Azure Blob 資源存在,則傳回 true;否則為 false。 注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的 Blob。 反之亦然,此函式完成後,其他用戶端或應用程式可能會新增新的 Blob。 |
generate |
僅適用于使用共用金鑰認證建構的 BlobClient。 根據傳入的用戶端屬性和參數,產生 Blob 服務共用存取簽章 (SAS) URI。 SAS 是由用戶端的共用金鑰認證所簽署。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas |
get |
建立 AppendBlobClient 物件。 |
get |
取得管理 Blob 上租用的 BlobLeaseClient 。 |
get |
建立 BlockBlobClient 物件。 |
get |
建立 PageBlobClient 物件。 |
get |
傳回 Blob 之所有使用者定義的中繼資料、標準 HTTP 屬性及系統屬性。 但不會傳回 Blob 的內容。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties 警告: |
get |
取得與基礎 Blob 相關聯的標記。 |
set |
設定 Blob 上的階層。 在進階儲存體帳戶中的分頁 Blob 和 Blob 儲存體帳戶中的區塊 Blob 上,允許此作業 (本機備援儲存體) 。 進階分頁 Blob 的層會決定 Blob 的允許大小、IOPS 和頻寬。 區塊 Blob 的層會決定經常性存取/非經常性存取/封存儲存體類型。 這項作業不會更新 Blob 的 ETag。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-tier |
set |
在 Blob 上設定系統屬性。 如果未提供任何值,或未為指定的 Blob HTTP 標頭提供任何值,則會清除沒有值的這些 Blob HTTP 標頭。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties |
set |
在 Blob 上設定不可變原則。 |
set |
在 Blob 上設定合法保存。 |
set |
將指定 Blob 的使用者定義中繼資料設為一或多個名稱/值配對。 如果未提供任何選項,或參數中未定義任何中繼資料,則會移除 Blob 中繼資料。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata |
set |
設定基礎 Blob 上的標記。 Blob 最多可以有 10 個標記。 標記索引鍵必須介於 1 到 128 個字元之間。 標籤值必須介於 0 到 256 個字元之間。 有效的標記索引鍵和值字元包括小寫字母和大寫字母、數位 (0-9) 、空格 (' ') ,加上 ('+') 、減 ('-') 、句號 ('。') 、正斜線 ('/') 、冒號 (':') 、等於 ('=') ,以及底線 ('_') 。 |
sync |
同步複製來源 URL 作業會將 Blob 或網際網路資源複製到新的 Blob。 在複製完成之前,它不會傳迴響應。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url |
undelete(Blob |
還原虛刪除 Blob 的內容和中繼資料,以及任何相關聯的虛刪除快照集。 只有 2017-07-29 版或更新版本才支援取消刪除 Blob。 請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob |
with |
建立指向此 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
credential
例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自套件的 @azure/identity
認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。
credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential
屬性值
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);
傳回
Promise<AppendBlobAppendBlockResponse>
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
要附加為區塊的位元組數目
傳回
Promise<AppendBlobAppendBlockFromUrlResponse>
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();
傳回
Promise<AppendBlobCreateResponse>
createIfNotExists(AppendBlobCreateIfNotExistsOptions)
建立 0 長度的附加 Blob。 呼叫 AppendBlock 以將資料附加至附加 Blob。 如果具有相同名稱的 Blob 已經存在,則現有 Blob 的內容會保持不變。
請參閱https://docs.microsoft.com/rest/api/storageservices/put-blob
function createIfNotExists(options?: AppendBlobCreateIfNotExistsOptions): Promise<AppendBlobCreateIfNotExistsResponse>
參數
傳回
Promise<AppendBlobCreateIfNotExistsResponse>
seal(AppendBlobSealOptions)
密封附加 Blob,使其唯讀。
function seal(options?: AppendBlobSealOptions): Promise<AppendBlobAppendBlockResponse>
參數
- 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 作業的選擇性選項。
傳回
Promise<BlobAbortCopyFromURLResponse>
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 複製作業的選擇性選項。
傳回
createSnapshot(BlobCreateSnapshotOptions)
建立 Blob 的唯讀快照集。
請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob
function createSnapshot(options?: BlobCreateSnapshotOptions): Promise<BlobCreateSnapshotResponse>
參數
- options
- BlobCreateSnapshotOptions
Blob 建立快照集作業的選擇性選項。
傳回
Promise<BlobCreateSnapshotResponse>
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 刪除作業的選擇性選項。
傳回
Promise<BlobDeleteResponse>
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 刪除作業的選擇性選項。
傳回
Promise<BlobDeleteIfExistsResponse>
deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)
刪除 Blob 上的不固定原則。
function deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions): Promise<BlobDeleteImmutabilityPolicyResponse>
參數
在 Blob 上刪除不變性原則的選擇性選項。
傳回
Promise<BlobDeleteImmutabilityPolicyResponse>
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);
});
}
傳回
Promise<BlobDownloadResponseParsed>
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>
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>
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 下載選項的選項。
傳回
Promise<BlobDownloadResponseParsed>
Blob 下載作業的回應資料,但已將 readableStreamBody 設定為未定義,因為其內容已經讀取並寫入指定路徑的本機檔案中。
exists(BlobExistsOptions)
如果此用戶端所代表的 Azure Blob 資源存在,則傳回 true;否則為 false。
注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的 Blob。 反之亦然,此函式完成後,其他用戶端或應用程式可能會新增新的 Blob。
function exists(options?: BlobExistsOptions): Promise<boolean>
參數
- options
- BlobExistsOptions
存在作業的選項。
傳回
Promise<boolean>
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 權杖。
getAppendBlobClient()
建立 AppendBlobClient 物件。
function getAppendBlobClient(): AppendBlobClient
傳回
getBlobLeaseClient(string)
取得管理 Blob 上租用的 BlobLeaseClient 。
function getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient
參數
- proposeLeaseId
-
string
初始建議的租用識別碼。
傳回
新的 BlobLeaseClient 物件,用於管理 Blob 上的租用。
getBlockBlobClient()
建立 BlockBlobClient 物件。
function getBlockBlobClient(): BlockBlobClient
傳回
getPageBlobClient()
建立 PageBlobClient 物件。
function getPageBlobClient(): PageBlobClient
傳回
getProperties(BlobGetPropertiesOptions)
傳回 Blob 之所有使用者定義的中繼資料、標準 HTTP 屬性及系統屬性。 但不會傳回 Blob 的內容。
請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties
警告: metadata
回應中傳回的物件會以小寫顯示其索引鍵,即使原本包含大寫字元也一樣。 這與使用 選項列出 Blob includeMetadata
的ContainerClient方法所傳回的中繼資料金鑰不同,此選項會保留其原始大小寫。
function getProperties(options?: BlobGetPropertiesOptions): Promise<BlobGetPropertiesResponse>
參數
- options
- BlobGetPropertiesOptions
取得屬性作業的選擇性選項。
傳回
Promise<BlobGetPropertiesResponse>
getTags(BlobGetTagsOptions)
取得與基礎 Blob 相關聯的標記。
function getTags(options?: BlobGetTagsOptions): Promise<BlobGetTagsResponse>
參數
- options
- BlobGetTagsOptions
傳回
Promise<BlobGetTagsResponse>
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 設定層作業的選擇性選項。
傳回
Promise<BlobSetTierResponse>
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 標頭作業的選擇性選項。
傳回
Promise<BlobSetHTTPHeadersResponse>
setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)
在 Blob 上設定不可變原則。
function setImmutabilityPolicy(immutabilityPolicy: BlobImmutabilityPolicy, options?: BlobSetImmutabilityPolicyOptions): Promise<BlobSetImmutabilityPolicyResponse>
參數
- immutabilityPolicy
- BlobImmutabilityPolicy
- options
- BlobSetImmutabilityPolicyOptions
在 Blob 上設定不變性原則的選擇性選項。
傳回
Promise<BlobSetImmutabilityPolicyResponse>
setLegalHold(boolean, BlobSetLegalHoldOptions)
在 Blob 上設定合法保存。
function setLegalHold(legalHoldEnabled: boolean, options?: BlobSetLegalHoldOptions): Promise<BlobSetLegalHoldResponse>
參數
- legalHoldEnabled
-
boolean
- options
- BlobSetLegalHoldOptions
在 Blob 上設定合法保留的選擇性選項。
傳回
Promise<BlobSetLegalHoldResponse>
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
設定中繼資料作業的選擇性選項。
傳回
Promise<BlobSetMetadataResponse>
setTags(Tags, BlobSetTagsOptions)
設定基礎 Blob 上的標記。 Blob 最多可以有 10 個標記。 標記索引鍵必須介於 1 到 128 個字元之間。 標籤值必須介於 0 到 256 個字元之間。 有效的標記索引鍵和值字元包括小寫字母和大寫字母、數位 (0-9) 、空格 (' ') ,加上 ('+') 、減 ('-') 、句號 ('。') 、正斜線 ('/') 、冒號 (':') 、等於 ('=') ,以及底線 ('_') 。
function setTags(tags: Tags, options?: BlobSetTagsOptions): Promise<BlobSetTagsResponse>
參數
- tags
- Tags
- options
- BlobSetTagsOptions
傳回
Promise<BlobSetTagsResponse>
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) 可能需要進行驗證
- options
- BlobSyncCopyFromURLOptions
傳回
Promise<BlobCopyFromURLResponse>
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 取消刪除作業的選擇性選項。
傳回
Promise<BlobUndeleteResponse>
withVersion(string)
建立指向此 Blob 版本的新 BlobClient 物件。 提供 「」 會移除 versionId,並將用戶端傳回基底 Blob。
function withVersion(versionId: string): BlobClient
參數
- versionId
-
string
versionId。
傳回
指向此 Blob 版本的新 BlobClient 物件。