BlockBlobService 類別

區塊 Blob 可讓您有效率地上傳大型 Blob。 區塊 Blob 是由區塊組成,其中每個區塊會以區塊識別碼識別。 您可以透過撰寫一組區塊並以區塊識別碼認可的方式建立或修改區塊 Blob。 每個區塊的大小可能不同,最多 100 MB,而區塊 Blob 最多可以包含 50,000 個區塊。 因此,區塊 Blob 的大小上限約為 4.75 TB, (100 MB X 50,000 個區塊) 。 如果您要撰寫大小不超過 64 MB 的區塊 Blob,您可以使用單一寫入作業完整上傳它;請參閱create_blob_from_bytes。

:type ~azure.storage.common.TokenCredential

繼承
BlockBlobService

建構函式

BlockBlobService(account_name=None, account_key=None, sas_token=None, is_emulated=False, protocol='https', endpoint_suffix='core.windows.net', custom_domain=None, request_session=None, connection_string=None, socket_timeout=None, token_credential=None)

參數

account_name
str
預設值: None

儲存體帳戶名稱。 這是用來驗證使用帳戶金鑰簽署的要求,以及建構儲存體端點。 除非提供連接字串,否則為必要專案,或自訂網域搭配匿名驗證使用。

account_key
str
預設值: None

儲存體帳戶金鑰。 這是用於共用金鑰驗證。 如果未指定帳戶金鑰或 sas 權杖,則會使用匿名存取。

sas_token
str
預設值: None

用來驗證要求的共用存取簽章權杖,而不是帳戶金鑰。 如果同時指定帳戶金鑰和 sas 權杖,則會使用帳戶金鑰來簽署。 如果未指定,則會使用匿名存取。

is_emulated
bool
預設值: False

是否要使用模擬器。 預設為 False。 如果指定,則會覆寫除了連接字串和要求會話以外的所有其他參數。

protocol
str
預設值: https

要用於要求的通訊協定。 預設為 HTTPs。

endpoint_suffix
str
預設值: core.windows.net

URL 的主機基底元件,減去帳戶名稱。 預設為 Azure (core.windows.net) 。 覆寫此選項以使用中國雲端 (core.chinacloudapi.cn) 。

custom_domain
str
預設值: None

要使用的自訂網域。 這可以在 Azure 入口網站中設定。 例如,'www.mydomain.com'。

request_session
<xref:requests.Session>
預設值: None

要用於 HTTP 要求的會話物件。

connection_string
str
預設值: None

如果指定,這會覆寫要求會話以外的所有其他參數。 如需連接字串格式,請參閱 http://azure.microsoft.com/en-us/documentation/articles/storage-configure-connection-string/

socket_timeout
int
預設值: None

如果指定,這會覆寫預設通訊端逾時。 指定的逾時以秒為單位。 如需預設值,請參閱 _constants.py 中的DEFAULT_SOCKET_TIMEOUT。

token_credential
預設值: None

用來驗證 HTTPS 要求的權杖認證。 權杖值應在到期前更新。

變數

MAX_SINGLE_PUT_SIZE
int

單一 put 呼叫中支援的最大上傳大小。 如果已知內容長度且小於此值,create_blob_from_* 方法會使用此方法。

MAX_BLOCK_SIZE
int

如果內容長度未知或大於MAX_SINGLE_PUT_SIZE,則由 create_blob_from_* 方法放置的區塊大小。 可能會放置較小的區塊。 服務支援的區塊大小上限為 100MB。

MIN_LARGE_BLOCK_UPLOAD_THRESHOLD
int

記憶體優化、區塊上傳演算法視為最社區塊大小。 此演算法僅適用于create_blob_from_file和create_blob_from_stream方法,而且會防止區塊的完整緩衝處理。 除了區塊大小之外,必須停用 ContentMD5 驗證和加密,因為這些選項需要緩衝處理區塊。

方法

abort_copy_blob

中止擱置copy_blob作業,並保留長度為零和完整中繼資料的目的地 Blob。

acquire_blob_lease

要求新的租用。 如果 Blob 沒有作用中的租用,Blob 服務會在 Blob 上建立租用,並傳回新的租用識別碼。

acquire_container_lease

要求新的租用。 如果容器沒有作用中的租用,Blob 服務會在容器上建立租用,並傳回新的租用識別碼。

batch_delete_blobs

傳送多個 Blob 刪除要求的批次。

Blob delete 方法會刪除指定的 Blob 或快照集。 請注意,刪除 Blob 也會刪除其所有快照集。 如需詳細資訊,請參閱 https://docs.microsoft.com/rest/api/storageservices/delete-blob

batch_set_standard_blob_tier

傳送多個設定區塊 Blob 層要求的批次。 只有標準儲存體帳戶上的區塊 Blob 才支援此 API。

break_blob_lease

如果 Blob 有作用中的租用,請中斷租用。 一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外的租用作業,可以在 Blob 上執行。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。

已中斷的租用也可以釋放,在此情況下,其他用戶端可以立即在 Blob 上取得租用。

break_container_lease

如果容器有作用中的租用,請中斷租用。 一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外,可以在容器上執行任何租用作業。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。

change_blob_lease

變更作用中租用的租用識別碼。 變更必須包含目前的租用識別碼和新的租用識別碼。

change_container_lease

變更使用中租用的租用識別碼。 變更必須包含目前的租用識別碼和新的租用識別碼。

copy_blob

複製 Blob。 此作業會傳回復製作業屬性物件。 複製作業可以設定為非同步、最努力的作業或同步作業。

如果requires_sync為 true,則來源必須是區塊 Blob。 所有現有的目的地 Blob 都會被覆寫。 複製作業進行時,無法修改目的地 Blob。

從區塊 Blob 複製時,會複製所有認可的區塊及其區塊識別碼。 未認可的區塊不會複製。 在複製作業結束時,目的地 Blob 會擁有與來源相同的認可區塊計數。

您可以在目的地 Blob 上呼叫get_blob_properties,以檢查複製作業的狀態。 複製完成時,會認可最後的 Blob。

目的地容器的名稱。 容器必須存在。 :p aram str blob_name:目的地 Blob 的名稱。 如果目的地 Blob 存在,則會覆寫它。 否則,將會建立它。 :p aram str copy_source:最多 2 KB 的 URL,指定 Azure 檔案或 Blob。 此值應該像出現在要求 URI 中一樣以 URL 編碼。 如果來源位於另一個帳戶中,則來源必須是公用,或必須透過共用存取簽章進行驗證。 如果來源是公用的,則不需要驗證。 範例: https://myaccount.blob.core.windows.net/mycontainer/myblobhttps://myaccount.blob.core.windows.net/mycontainer/myblob ?snapshot= https://otheraccount.blob.core.windows.net/mycontainer/myblob?sastoken :p aram 中繼資料:與 Blob 相關聯的名稱/值組作為中繼資料。 如果未指定名稱/值組,作業會將中繼資料從來源 Blob 或檔案複製到目的地 Blob。 如果指定了一或多個名稱/值組,則會使用指定的中繼資料建立目的地 Blob,而且中繼資料不會從來源 Blob 或檔案複製。 :type metadata: dict (str, str) :p aram datetime source_if_modified_since: A DateTime value. Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在指定日期/時間修改來源 Blob 時,才能指定此條件式標頭以複製 Blob。 :p aram datetime source_if_unmodified_since:DateTime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在非指定日期/時間修改來源 Blob 時,才能指定此條件式標頭以複製 Blob。 :p aram ETag source_if_match:ETag 值或萬用字元 () 。只有當其 ETag 符合指定的值時,才指定這個條件式標頭來複製來源 Blob。如果 ETag 值不符,Blob 服務會傳回狀態碼 412 (前置條件失敗) 。如果來源是 Azure 檔案,則無法指定此標頭。:p aram ETag source_if_none_match:ETag 值或萬用字元 () 。 只有當其 ETag 與指定的值不相符時,才能指定此條件式標頭複製 Blob。 如果兩值完全相同,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 如果來源是 Azure 檔案,則無法指定此標頭。 :p aram datetime destination_if_modified_since:DateTime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在指定日期/時間修改目的地 Blob 時,才能指定此條件式標頭以複製 Blob。 如果未修改目的地 Blob,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 :p aram datetime destination_if_unmodified_since:DateTime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在非指定日期/時間修改目的地 Blob 時,才能指定此條件式標頭以複製 Blob。 如果已修改目的地 Blob,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 :p aram ETag destination_if_match:ETag 值或萬用字元 () 。只有當指定的 ETag 值符合現有目的地 Blob 的 ETag 值時,才指定此條件標頭的 ETag 值來複製 Blob。如果目的地 Blob 的 ETag 不符合針對 If-Match 指定的 ETag,Blob 服務會傳回狀態碼 412 (前置條件失敗) 。:p aram ETag destination_if_none_match:ETag 值或萬用字元 () 。 只有在指定的 ETag 值不符合目的地 Blob 的 ETag 值時,才能指定此條件式標頭的 ETag 值以複製 Blob。 只有在目的地 Blob 不存在時,才指定萬用字元 (*) 執行作業。 如果不符合指定的條件,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 :p aram str destination_lease_id:為此標頭指定的租用識別碼必須符合目的地 Blob 的租用識別碼。 如果要求不包含租用識別碼或無效,作業會失敗,並顯示狀態碼 412 (先決條件失敗)。 :p aram str source_lease_id:只有在指定的租用識別碼符合來源 Blob 的作用中租用識別碼時,才指定此專案來執行複製 Blob 作業。 :p aram int timeout:timeout 參數是以秒為單位表示。 :p aram bool requires_sync:強制服務在複製完成之前不會傳迴響應。 :p aram StandardBlobTier standard_blob_tier:要設定 Blob 的標準 Blob 層值。 針對此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。 :p aram RehydratePriority rehydrate_priority:指出要解除凍結封存 Blob 的優先順序:傳回:複製作業屬性,例如狀態、來源和識別碼。 :rtype: CopyProperties

create_blob_from_bytes

使用自動區塊化和進度通知,從位元組陣列建立新的 Blob,或更新現有 Blob 的內容。

create_blob_from_path

從檔案路徑建立新的 Blob,或使用自動區塊化和進度通知來更新現有 Blob 的內容。

create_blob_from_stream

使用自動區塊化和進度通知,從檔案/資料流程建立新的 Blob,或更新現有 Blob 的內容。

create_blob_from_text

使用自動區塊化和進度通知,從 str/unicode 建立新的 Blob,或更新現有 Blob 的內容。

create_container

在指定的帳號下建立新的容器。 如果已經有相同名稱的容器存在,如果fail_on_exist為 True,作業就會失敗。

delete_blob

標示要刪除的指定 Blob 或快照集。 Blob 稍後會在記憶體回收時刪除。

請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。

如果服務已啟用刪除保留原則,此作業會虛刪除 Blob 或快照集,並保留 Blob 或快照集的指定天數。 在指定的天數之後,Blob 的資料會在垃圾收集期間從服務中移除。 虛刪除的 Blob 或快照集可透過指定 include=Include.Deleted 選項的清單 Blob API 來存取。 虛刪除的 Blob 或快照集可以使用取消刪除 API 來還原。

delete_container

標示要刪除的指定容器。 其中包含的容器和任何 Blob 稍後會在記憶體回收時刪除。

exists

傳回布林值,指出如果blob_name為 None) ,或指出 Blob 是否存在,則傳回布林值,指出容器是否存在 (。

extract_date_and_request_id
generate_account_shared_access_signature

產生 Blob 服務的共用存取簽章。 使用傳回的簽章搭配任何 BlobService 的 sas_token 參數。

generate_blob_shared_access_signature

產生 Blob 或其其中一個快照集的共用存取簽章。 使用傳回的簽章搭配任何 BlobService 的 sas_token 參數。

generate_container_shared_access_signature

產生容器的共用存取簽章。 使用傳回的簽章搭配任何 BlobService 的 sas_token 參數。

get_blob_account_information

取得與儲存體帳戶相關的資訊。 如果使用者具有容器或 Blob 的 SAS,也可以擷取資訊。

get_blob_metadata

傳回指定之 Blob 或快照集的所有使用者定義中繼資料。

get_blob_properties

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

get_blob_service_properties

取得儲存體帳戶 Blob 服務的屬性,包括 Azure 儲存體分析。

get_blob_service_stats

擷取與 Blob 服務的複寫相關的統計資料。 只有在儲存體帳戶啟用讀取權限異地備援複寫時,才能使用。

有了地理備援複寫,Azure 儲存體會以持久的方式在兩個位置維護您的資料。 在這兩個位置中,Azure 儲存體會持續維護狀況良好的多個資料複本。 您讀取、建立、更新或刪除資料的位置是「主要」儲存體帳戶的位置。 主要位置存在於您在透過 Azure 管理 Azure 傳統入口網站建立帳戶時所選擇的區域,例如美國中北部。 資料複寫的目標位置是「次要」位置。 次要位置是根據主要的位置自動判斷而來,它是與主要位置位於相同地區的第二個資料中心。 當儲存體帳戶啟用「讀取權限的地理備援複寫」時,可從次要位置使用唯讀權限。

get_blob_to_bytes

使用自動區塊處理和進度通知,將 Blob 下載為位元組陣列。 傳回 具有屬性、中繼資料和內容的 實例 Blob

get_blob_to_path

使用自動區塊化和進度通知,將 Blob 下載至檔案路徑。 傳回 具有屬性和中繼資料的 Blob 實例。

get_blob_to_stream

使用自動區塊化和進度通知,將 Blob 下載至資料流程。 傳回 具有屬性和中繼資料的 Blob 實例。

get_blob_to_text

使用自動區塊處理和進度通知,將 Blob 下載為 Unicode 文字。 傳回 具有屬性、中繼資料和內容的 實例 Blob

get_block_list

擷取已上傳做為區塊 Blob 一部分的區塊清單。 Blob 使用兩個區塊清單:

已認可的封鎖清單:已成功認可至具有放置區塊清單的指定 Blob 的區塊清單。

未認可的封鎖清單:已使用 Put Block 為 Blob 上傳但尚未認可的區塊清單。 這些區塊儲存在 Azure 中並與 Blob 產生關聯,但尚未構成 Blob 的一部分。

get_container_acl

取得指定容器的許可權。 這些權限指出是否可以公開存取容器資料。

get_container_metadata

傳回指定之容器的所有使用者定義中繼資料。

get_container_properties

傳回指定容器的所有使用者定義中繼資料和系統屬性。 傳回的資料不包含容器的 Blob 清單。

get_user_delegation_key

取得使用者委派金鑰以簽署 SAS 權杖。 權杖認證必須存在於服務物件上,此要求才能成功。

list_blob_names

傳回產生器,以列出指定容器下的 Blob 名稱。 產生器會延遲遵循服務所傳回的接續權杖,並在到達所有 Blob 或num_results時停止。

如果指定num_results,且帳戶的 Blob 數目超過該數目,則產生器會在完成之後填入next_marker欄位。 如果需要更多結果,可以使用此標記來建立新的產生器。

list_blobs

傳回產生器,以列出指定容器底下的 Blob。 產生器會延遲遵循服務所傳回的接續權杖,並在到達所有 Blob 或num_results時停止。

如果指定了num_results,且帳戶的 Blob 數目超過該數目,則產生器會在完成時填入next_marker欄位。 如果需要更多結果,此標記可用來建立新的產生器。

list_containers

傳回產生器,以列出指定帳戶下的容器。 產生器會延遲遵循服務所傳回的接續權杖,並在到達所有容器或num_results時停止。

如果指定了num_results,且帳戶的容器數目超過該數目,則產生器會在完成之後填入next_marker欄位。 如果需要更多結果,此標記可用來建立新的產生器。

make_blob_url

建立 URL 以存取 Blob。

make_container_url

建立 URL 以存取容器。

put_block

建立新區塊,並認可為 Blob 的一部分。

put_block_from_url

建立新區塊,並認可為 Blob 的一部分。

put_block_list

透過指定組成 Blob 的區塊識別碼清單,將 Blob 寫入。 若要將 區塊寫入為 Blob 的一部分,區塊必須在先前的 Put Block 作業中成功寫入伺服器。

您可以只上傳已變更的區塊,然後一起認可新的和現有的區塊,呼叫 Put Block List 來更新 Blob。 若要達成此目的,您可從認可的區塊清單或未認可的區塊清單中的區塊指定是否要認可此區塊,或認可最近上傳的區塊版本 (而不論其所屬的清單為何)。

release_blob_lease

釋放租用。 如果在要求上指定的租用識別碼符合該 Blob 相關聯的租用,則可以釋放租用。 釋放租用可讓其他用戶端在釋放完成時,立即取得 Blob 的租用。

release_container_lease

釋放租用。 如果指定的lease_id符合與容器相關聯的,可能會釋放租用。 釋放租用可讓其他用戶端在釋放完成時,立即取得容器的租用。

renew_blob_lease

更新租用。 如果在要求上指定的租用識別碼符合該 Blob 相關聯的租用,則租用可以更新。 請注意,租用到期之後,只要 Blob 未曾修改或再度租用,即使租用已到期,還是可以更新。 當您更新租用時,租用持續時間的時鐘會重設。

renew_container_lease

更新租用。 如果指定的租用識別碼符合與容器相關聯的租用識別碼,則可以更新租用。 請注意,租用到期之後,只要容器未曾再度租用,即使租用已過期,還是可以更新。 當您更新租用時,租用持續時間的時鐘會重設。

set_blob_metadata

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

set_blob_properties

在 Blob 上設定系統屬性。 如果已針對content_settings設定一個屬性,則會覆寫所有屬性。

set_blob_service_properties

設定儲存體帳戶 Blob 服務的屬性,包括 Azure 儲存體分析。 如果專案 (例如記錄) 保留為 None,則會保留該服務上該功能的現有設定。

set_container_acl

設定可搭配共用存取簽章使用的指定容器或預存存取原則的許可權。 這些權限指出是否可以公開存取容器中的 Blob。

set_container_metadata

為指定的容器設定一或多個使用者定義的名稱/值組。 每次呼叫這項作業都會取代附加至容器之所有現有的中繼資料。 若要從容器中移除所有中繼資料,請呼叫沒有中繼資料聽寫的這項作業。

set_proxy

設定 HTTP CONNECT Tunnelling 的 Proxy 伺服器主機和埠。

set_standard_blob_tier

設定 Blob 上的區塊 Blob 層。 只有標準儲存體帳戶上的區塊 Blob 才支援此 API。

:p aram RehydratePriority rehydrate_priority:指出將封存 Blob 解除凍結的優先順序

snapshot_blob

建立 Blob 的唯讀快照集。

undelete_blob

取消刪除 Blob 作業會還原虛刪除 Blob 或快照集的內容和中繼資料。 嘗試取消刪除未虛刪除的 Blob 或快照集將會成功,而不會進行任何變更。

abort_copy_blob

中止擱置copy_blob作業,並保留長度為零和完整中繼資料的目的地 Blob。

abort_copy_blob(container_name, blob_name, copy_id, lease_id=None, timeout=None)

參數

container_name
str
必要

目的地容器的名稱。

blob_name
str
必要

目的地 Blob 的名稱。

copy_id
str
必要

原始copy_blob作業 copy.id 中提供的複製識別碼。

lease_id
str
預設值: None

如果目的地 Blob 為作用中的無限期租用,則為必要項目。

timeout
int
預設值: None

timeout 參數以秒為單位。

acquire_blob_lease

要求新的租用。 如果 Blob 沒有作用中的租用,Blob 服務會在 Blob 上建立租用,並傳回新的租用識別碼。

acquire_blob_lease(container_name, blob_name, lease_duration=-1, proposed_lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

lease_duration
int
預設值: -1

指定租用的持續時間 (秒數),或指定負一 (-1),代表租用永不到期。 非無限期的租用可以介於 15 到 60 秒之間。 無法使用續約或變更來變更租用持續時間。 預設值為 -1 (無限租用) 。

proposed_lease_id
str
預設值: None

建議的租用識別碼,使用 GUID 字串格式。 如果建議的租用識別碼的格式不正確,Blob 服務會傳回 400 (不正確要求) 。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

字串

acquire_container_lease

要求新的租用。 如果容器沒有作用中的租用,Blob 服務會在容器上建立租用,並傳回新的租用識別碼。

acquire_container_lease(container_name, lease_duration=-1, proposed_lease_id=None, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_duration
int
預設值: -1

指定租用的持續時間 (秒數),或指定負一 (-1),代表租用永不到期。 非無限期的租用可以介於 15 到 60 秒之間。 無法使用續約或變更來變更租用持續時間。 預設值為 -1 (無限租用) 。

proposed_lease_id
str
預設值: None

建議的租用識別碼,使用 GUID 字串格式。 如果建議的租用識別碼的格式不正確,Blob 服務會傳回 400 (不正確要求) 。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

字串

batch_delete_blobs

傳送多個 Blob 刪除要求的批次。

Blob delete 方法會刪除指定的 Blob 或快照集。 請注意,刪除 Blob 也會刪除其所有快照集。 如需詳細資訊,請參閱 https://docs.microsoft.com/rest/api/storageservices/delete-blob

batch_delete_blobs(batch_delete_sub_requests, timeout=None)

參數

batch_delete_sub_requests
list(BatchDeleteSubRequest)
必要

Blob 刪除要以批次方式傳送的要求。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

剖析的批次刪除 HTTP 回應

傳回類型

batch_set_standard_blob_tier

傳送多個設定區塊 Blob 層要求的批次。 只有標準儲存體帳戶上的區塊 Blob 才支援此 API。

batch_set_standard_blob_tier(batch_set_blob_tier_sub_requests, timeout=None)

參數

batch_set_blob_tier_sub_requests
list(BatchSetBlobTierSubRequest)
必要

要以批次方式傳送的設定區塊 Blob 層要求。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

傳回

剖析的批次集層 HTTP 回應,指出每個子要求是否成功。

傳回類型

break_blob_lease

如果 Blob 有作用中的租用,請中斷租用。 一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外的租用作業,可以在 Blob 上執行。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。

已中斷的租用也可以釋放,在此情況下,其他用戶端可以立即在 Blob 上取得租用。

break_blob_lease(container_name, blob_name, lease_break_period=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

lease_break_period
int
預設值: None

針對中斷作業,這是租用在中斷前應繼續的建議持續時間,介於 0 到 60 秒之間。 只有在比租用的剩餘時間還短時,才會使此中斷期。 如果時間較長,則會使用租用的剩餘時間。 在中斷期到期之前,將無法使用新的租用,但是保留租用的時間可以比中斷期還長。 如果此標頭未顯示中斷作業,固定持續時間租用會在剩餘租用期間經過之後中斷,而無限租用會立即中斷。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

int

break_container_lease

如果容器有作用中的租用,請中斷租用。 一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外,可以在容器上執行任何租用作業。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。

break_container_lease(container_name, lease_break_period=None, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_break_period
int
預設值: None

這是租用在中斷前應該繼續的秒數建議持續時間,介於 0 到 60 秒之間。 只有在比租用的剩餘時間還短時,才會使此中斷期。 如果時間較長,則會使用租用的剩餘時間。 在中斷期到期之前,將無法使用新的租用,但是保留租用的時間可以比中斷期還長。 如果此標頭未顯示中斷作業,固定持續時間租用會在剩餘租用期間經過之後中斷,而無限租用會立即中斷。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

int

change_blob_lease

變更作用中租用的租用識別碼。 變更必須包含目前的租用識別碼和新的租用識別碼。

change_blob_lease(container_name, blob_name, lease_id, proposed_lease_id, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

lease_id
str
必要

如果 Blob 具有作用中租用,則為必要項目。

proposed_lease_id
str
必要

建議的租用識別碼,使用 GUID 字串格式。 如果建議的租用識別碼格式不正確,Blob 服務會傳回 400 (不正確要求) 。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

timeout
int
預設值: None

timeout 參數以秒為單位。

change_container_lease

變更使用中租用的租用識別碼。 變更必須包含目前的租用識別碼和新的租用識別碼。

change_container_lease(container_name, lease_id, proposed_lease_id, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_id
str
必要

使用中租用的租用識別碼。

proposed_lease_id
str
必要

建議的租用識別碼,使用 GUID 字串格式。 如果建議的租用識別碼格式不正確,Blob 服務會傳回 400 (不正確要求) 。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

copy_blob

複製 Blob。 此作業會傳回復製作業屬性物件。 複製作業可以設定為非同步、最努力的作業或同步作業。

如果requires_sync為 true,則來源必須是區塊 Blob。 所有現有的目的地 Blob 都會被覆寫。 複製作業進行時,無法修改目的地 Blob。

從區塊 Blob 複製時,會複製所有認可的區塊及其區塊識別碼。 未認可的區塊不會複製。 在複製作業結束時,目的地 Blob 會擁有與來源相同的認可區塊計數。

您可以在目的地 Blob 上呼叫get_blob_properties,以檢查複製作業的狀態。 複製完成時,會認可最後的 Blob。

目的地容器的名稱。 容器必須存在。 :p aram str blob_name:目的地 Blob 的名稱。 如果目的地 Blob 存在,則會覆寫它。 否則,將會建立它。 :p aram str copy_source:最多 2 KB 的 URL,指定 Azure 檔案或 Blob。 此值應該像出現在要求 URI 中一樣以 URL 編碼。 如果來源位於另一個帳戶中,則來源必須是公用,或必須透過共用存取簽章進行驗證。 如果來源是公用的,則不需要驗證。 範例: https://myaccount.blob.core.windows.net/mycontainer/myblobhttps://myaccount.blob.core.windows.net/mycontainer/myblob ?snapshot= https://otheraccount.blob.core.windows.net/mycontainer/myblob?sastoken :p aram 中繼資料:與 Blob 相關聯的名稱/值組作為中繼資料。 如果未指定名稱/值組,作業會將中繼資料從來源 Blob 或檔案複製到目的地 Blob。 如果指定了一或多個名稱/值組,則會使用指定的中繼資料建立目的地 Blob,而且中繼資料不會從來源 Blob 或檔案複製。 :type metadata: dict (str, str) :p aram datetime source_if_modified_since: A DateTime value. Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在指定日期/時間修改來源 Blob 時,才能指定此條件式標頭以複製 Blob。 :p aram datetime source_if_unmodified_since:DateTime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在非指定日期/時間修改來源 Blob 時,才能指定此條件式標頭以複製 Blob。 :p aram ETag source_if_match:ETag 值或萬用字元 () 。只有當其 ETag 符合指定的值時,才指定這個條件式標頭來複製來源 Blob。如果 ETag 值不符,Blob 服務會傳回狀態碼 412 (前置條件失敗) 。如果來源是 Azure 檔案,則無法指定此標頭。:p aram ETag source_if_none_match:ETag 值或萬用字元 () 。 只有當其 ETag 與指定的值不相符時,才能指定此條件式標頭複製 Blob。 如果兩值完全相同,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 如果來源是 Azure 檔案,則無法指定此標頭。 :p aram datetime destination_if_modified_since:DateTime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在指定日期/時間修改目的地 Blob 時,才能指定此條件式標頭以複製 Blob。 如果未修改目的地 Blob,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 :p aram datetime destination_if_unmodified_since:DateTime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有在非指定日期/時間修改目的地 Blob 時,才能指定此條件式標頭以複製 Blob。 如果已修改目的地 Blob,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 :p aram ETag destination_if_match:ETag 值或萬用字元 () 。只有當指定的 ETag 值符合現有目的地 Blob 的 ETag 值時,才指定此條件標頭的 ETag 值來複製 Blob。如果目的地 Blob 的 ETag 不符合針對 If-Match 指定的 ETag,Blob 服務會傳回狀態碼 412 (前置條件失敗) 。:p aram ETag destination_if_none_match:ETag 值或萬用字元 () 。 只有在指定的 ETag 值不符合目的地 Blob 的 ETag 值時,才能指定此條件式標頭的 ETag 值以複製 Blob。 只有在目的地 Blob 不存在時,才指定萬用字元 (*) 執行作業。 如果不符合指定的條件,Blob 服務會傳回狀態碼 412 (先決條件失敗)。 :p aram str destination_lease_id:為此標頭指定的租用識別碼必須符合目的地 Blob 的租用識別碼。 如果要求不包含租用識別碼或無效,作業會失敗,並顯示狀態碼 412 (先決條件失敗)。 :p aram str source_lease_id:只有在指定的租用識別碼符合來源 Blob 的作用中租用識別碼時,才指定此專案來執行複製 Blob 作業。 :p aram int timeout:timeout 參數是以秒為單位表示。 :p aram bool requires_sync:強制服務在複製完成之前不會傳迴響應。 :p aram StandardBlobTier standard_blob_tier:要設定 Blob 的標準 Blob 層值。 針對此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。 :p aram RehydratePriority rehydrate_priority:指出要解除凍結封存 Blob 的優先順序:傳回:複製作業屬性,例如狀態、來源和識別碼。 :rtype: CopyProperties

copy_blob(container_name, blob_name, copy_source, metadata=None, source_if_modified_since=None, source_if_unmodified_since=None, source_if_match=None, source_if_none_match=None, destination_if_modified_since=None, destination_if_unmodified_since=None, destination_if_match=None, destination_if_none_match=None, destination_lease_id=None, source_lease_id=None, timeout=None, requires_sync=None, standard_blob_tier=None, rehydrate_priority=None)

參數

container_name
str
必要
blob_name
必要
copy_source
必要
metadata
預設值: None
source_if_modified_since
預設值: None
source_if_unmodified_since
預設值: None
source_if_match
預設值: None
source_if_none_match
預設值: None
destination_if_modified_since
預設值: None
destination_if_unmodified_since
預設值: None
destination_if_match
預設值: None
destination_if_none_match
預設值: None
destination_lease_id
預設值: None
source_lease_id
預設值: None
timeout
預設值: None
requires_sync
預設值: None
standard_blob_tier
預設值: None
rehydrate_priority
預設值: None

create_blob_from_bytes

使用自動區塊化和進度通知,從位元組陣列建立新的 Blob,或更新現有 Blob 的內容。

create_blob_from_bytes(container_name, blob_name, blob, index=0, count=None, content_settings=None, metadata=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, standard_blob_tier=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

要建立或更新的 Blob 名稱。

blob
bytes
必要

以位元組陣列表示的 Blob 內容。

index
int
預設值: 0

位元組陣列中的開始索引。

count
int
預設值: None

要上傳的位元組數。 設定為 [無] 或 [負值] 以上傳從索引開始的所有位元組。

content_settings
ContentSettings
預設值: None

用來設定 Blob 屬性的 ContentSettings 物件。

metadata
dict(str, str)
預設值: None

與 Blob 相關聯的名稱/值組,可做為中繼資料。

validate_content
bool
預設值: False

如果為 true,則計算 Blob 每個區塊的 MD5 雜湊。 儲存體服務會檢查與已傳送雜湊一起抵達之內容的雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,此 MD5 雜湊不會隨 Blob 儲存。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,而總計是 Blob 的大小,如果總大小未知,則為 None。

max_connections
int
預設值: 2

Blob 大小超過 64 MB 時要使用的平行連線數目上限。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

standard_blob_tier
StandardBlobTier
預設值: None

要設定 Blob 的標準 Blob 層值。 針對此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。

傳回

區塊 Blob 的 ETag 和上次修改的屬性

傳回類型

create_blob_from_path

從檔案路徑建立新的 Blob,或使用自動區塊化和進度通知來更新現有 Blob 的內容。

create_blob_from_path(container_name, blob_name, file_path, content_settings=None, metadata=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, standard_blob_tier=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

要建立或更新的 Blob 名稱。

file_path
str
必要

要上傳為 Blob 內容的檔案路徑。

content_settings
ContentSettings
預設值: None

用來設定 Blob 屬性的 ContentSettings 物件。

metadata
dict(str, str)
預設值: None

與 Blob 相關聯的名稱/值組,可做為中繼資料。

validate_content
bool
預設值: False

如果為 true,則計算 Blob 每個區塊的 MD5 雜湊。 儲存體服務會檢查與已傳送雜湊一起抵達之內容的雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,此 MD5 雜湊不會隨 Blob 儲存。 另請注意,如果啟用,將不會使用記憶體有效率的上傳演算法,因為計算 MD5 雜湊需要緩衝處理整個區塊,因此會破壞記憶體有效演算法的目的。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,而總計是 Blob 的大小,如果總大小未知,則為 None。

max_connections
int
預設值: 2

Blob 大小超過 64 MB 時要使用的平行連線數目上限。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

standard_blob_tier
StandardBlobTier
預設值: None

要設定 Blob 的標準 Blob 層值。 針對此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。

傳回

區塊 Blob 的 ETag 和上次修改的屬性

傳回類型

create_blob_from_stream

使用自動區塊化和進度通知,從檔案/資料流程建立新的 Blob,或更新現有 Blob 的內容。

create_blob_from_stream(container_name, blob_name, stream, count=None, content_settings=None, metadata=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, use_byte_buffer=False, standard_blob_tier=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

要建立或更新的 Blob 名稱。

stream
IOBase
必要

開啟的檔案/資料流程,以上傳為 Blob 內容。

count
int
預設值: None

要從資料流程讀取的位元組數目。 這是選擇性的,但應該提供以獲得最佳效能。

content_settings
ContentSettings
預設值: None

用來設定 Blob 屬性的 ContentSettings 物件。

metadata
dict(str, str)
預設值: None

與 Blob 相關聯的名稱/值組,可做為中繼資料。

validate_content
bool
預設值: False

如果為 true,則計算 Blob 每個區塊的 MD5 雜湊。 儲存體服務會檢查與已傳送雜湊一起抵達之內容的雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,此 MD5 雜湊不會隨 Blob 儲存。 另請注意,如果啟用,將不會使用記憶體有效率的上傳演算法,因為計算 MD5 雜湊需要緩衝處理整個區塊,因此會破壞記憶體有效演算法的目的。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,而總計是 Blob 的大小,如果總大小未知,則為 None。

max_connections
int
預設值: 2

Blob 大小超過 64 MB 時要使用的平行連線數目上限。 請注意,平行上傳需要可搜尋資料流程。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

use_byte_buffer
bool
預設值: False

如果為 True,這會強制使用原始的完整區塊緩衝上傳路徑。 根據預設,此值為 False,且會在下列情況下採用具有記憶體效率的串流上傳演算法:提供的資料流程可搜尋、'require_encryption' 為 False,而 MAX_BLOCK_SIZE > = MIN_LARGE_BLOCK_UPLOAD_THRESHOLD。 其中一個應該考慮使用此方法的缺點。 為了達到記憶體效率,IOBase 資料流程或類似檔案的物件會使用 SubStream 包裝函式分割成邏輯區塊。 若要讀取正確的資料,每個 SubStream 都必須取得鎖定,以便安全地在共用的基礎資料流程上尋找正確的位置。 如果max_connections > 1,並行會導致大量搜尋基礎資料流程。 對於最常見的輸入,例如類似檔案的資料流程物件,搜尋是一項低成本的作業,但這並不多擔心。 不過,對於資料流程的其他變體,這可能不是這種情況。 記憶體效率的取捨必須根據使用輸入資料流程搜尋的成本來衡量。 SubStream 類別會嘗試在內部緩衝最多 4 MB,以減少對基礎資料流程的搜尋和讀取呼叫數量。 上傳較大的區塊時,這特別有用。

standard_blob_tier
StandardBlobTier
預設值: None

要設定 Blob 的標準 Blob 層值。 針對此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。

傳回

區塊 Blob 的 ETag 和上次修改的屬性

傳回類型

create_blob_from_text

使用自動區塊化和進度通知,從 str/unicode 建立新的 Blob,或更新現有 Blob 的內容。

create_blob_from_text(container_name, blob_name, text, encoding='utf-8', content_settings=None, metadata=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, standard_blob_tier=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

要建立或更新的 Blob 名稱。

text
str
必要

要上傳至 Blob 的文字。

encoding
str
預設值: utf-8

用來將文字轉換成位元組的 Python 編碼方式。

content_settings
ContentSettings
預設值: None

用來設定 Blob 屬性的 ContentSettings 物件。

metadata
dict(str, str)
預設值: None

與 Blob 相關聯的名稱/值組,可做為中繼資料。

validate_content
bool
預設值: False

如果為 true,則計算 Blob 每個區塊的 MD5 雜湊。 儲存體服務會檢查與已傳送雜湊一起抵達之內容的雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,此 MD5 雜湊不會隨 Blob 儲存。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,而總計是 Blob 的大小,如果總大小未知,則為 None。

max_connections
int
預設值: 2

Blob 大小超過 64 MB 時要使用的平行連線數目上限。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

standard_blob_tier
StandardBlobTier
預設值: None

要設定 Blob 的標準 Blob 層值。 針對此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。

傳回

區塊 Blob 的 ETag 和上次修改的屬性

傳回類型

create_container

在指定的帳號下建立新的容器。 如果已經有相同名稱的容器存在,如果fail_on_exist為 True,作業就會失敗。

create_container(container_name, metadata=None, public_access=None, fail_on_exist=False, timeout=None)

參數

container_name
str
必要

要建立的容器名稱。 容器名稱只能包含小寫字母、數位和連字號,且開頭必須是字母或數位。 每個連字號前後都必須緊接非連字號的字元。 名稱長度也必須為 3 到 63 個字元。

metadata
dict(str, str)
預設值: None

具有name_value組的聽寫,要與容器產生關聯做為中繼資料。 範例:{'Category':'test'}

public_access
PublicAccess
預設值: None

可能的值包括:容器、Blob。

fail_on_exist
bool
預設值: False

指定容器存在時是否擲回例外狀況。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

如果已建立容器,則為 True;如果容器已經存在,則為 False。

傳回類型

delete_blob

標示要刪除的指定 Blob 或快照集。 Blob 稍後會在記憶體回收時刪除。

請注意,若要刪除 Blob,您必須刪除其所有快照集。 您可以使用刪除 Blob 作業同時刪除這兩者。

如果服務已啟用刪除保留原則,此作業會虛刪除 Blob 或快照集,並保留 Blob 或快照集的指定天數。 在指定的天數之後,Blob 的資料會在垃圾收集期間從服務中移除。 虛刪除的 Blob 或快照集可透過指定 include=Include.Deleted 選項的清單 Blob API 來存取。 虛刪除的 Blob 或快照集可以使用取消刪除 API 來還原。

delete_blob(container_name, blob_name, snapshot=None, lease_id=None, delete_snapshots=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要刪除的 Blob 快照集。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

delete_snapshots
DeleteSnapshot
預設值: None

如果 Blob 有相關聯的快照集,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

timeout
int
預設值: None

timeout 參數以秒為單位。

delete_container

標示要刪除的指定容器。 其中包含的容器和任何 Blob 稍後會在記憶體回收時刪除。

delete_container(container_name, fail_not_exist=False, lease_id=None, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

要刪除的容器名稱。

fail_not_exist
bool
預設值: False

指定當容器不存在時是否擲回例外狀況。

lease_id
str
預設值: None

如果指定,delete_container只有在容器的租用作用中且符合此識別碼時才會成功。 如果容器有作用中的租用,則為必要專案。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

True 是表示 如果刪除容器, False 容器不存在。

傳回類型

exists

傳回布林值,指出如果blob_name為 None) ,或指出 Blob 是否存在,則傳回布林值,指出容器是否存在 (。

exists(container_name, blob_name=None, snapshot=None, timeout=None)

參數

container_name
str
必要

容器的名稱。

blob_name
str
預設值: None

Blob 的名稱。 如果為 None,則會檢查容器是否存在。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定快照集。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

布林值,指出資源是否存在。

傳回類型

extract_date_and_request_id

static extract_date_and_request_id(retry_context)

參數

retry_context
必要

generate_account_shared_access_signature

產生 Blob 服務的共用存取簽章。 使用傳回的簽章搭配任何 BlobService 的 sas_token 參數。

generate_account_shared_access_signature(resource_types, permission, expiry, start=None, ip=None, protocol=None)

參數

resource_types
<xref:ResourceTypes>
必要

指定帳戶 SAS 可存取的資源類型。

permission
<xref:AccountPermissions>
必要

這些權限與共用存取簽章相關聯。 使用者只能執行這些權限允許的作業。 除非指定參考包含此欄位之預存存取原則的識別碼,否則為必要專案。 如果已在相關聯的預存存取原則中指定,則必須省略此欄位。

expiry
datetimestr
必要

共用存取簽章變成不正確時間。 除非指定參考包含此欄位之預存存取原則的識別碼,否則為必要專案。 如果已在相關聯的預存存取原則中指定,則必須省略此欄位。 Azure 一律會將值轉換為 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。

start
datetimestr
預設值: None

共用存取簽章生效的時間。 如果省略,此呼叫的開始時間會假設為儲存體服務收到要求的時間。 Azure 一律會將值轉換為 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。

ip
str
預設值: None

指定要接受要求的 IP 位址或 IP 位址範圍。 如果要求的來源 IP 位址不符合 SAS 權杖上指定的 IP 位址或位址範圍,則不會驗證要求。 例如,在 SAS 上指定 sip=168.1.5.65 或 sip=168.1.5.60-168.1.5.70 會限制這些 IP 位址的要求。

protocol
str
預設值: None

指定要求允許的通訊協定。 預設值為 HTTPs,HTTP。 如需可能的值,請參閱<Protocol>。

傳回

共用存取簽章 (sas) 權杖。

傳回類型

str

generate_blob_shared_access_signature

產生 Blob 或其其中一個快照集的共用存取簽章。 使用傳回的簽章搭配任何 BlobService 的 sas_token 參數。

generate_blob_shared_access_signature(container_name, blob_name, snapshot=None, permission=None, expiry=None, start=None, id=None, ip=None, protocol=None, cache_control=None, content_disposition=None, content_encoding=None, content_language=None, content_type=None, user_delegation_key=None)

參數

container_name
str
必要

容器的名稱。

blob_name
str
必要

Blob 的名稱。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要授與許可權的 Blob 快照集。

permission
BlobPermissions
預設值: None

這些權限與共用存取簽章相關聯。 使用者只能執行這些權限允許的作業。 許可權必須排序為讀取、寫入、刪除、清單。 除非指定參考包含此欄位之預存存取原則的識別碼,否則為必要專案。 如果已在相關聯的預存存取原則中指定,則必須省略此欄位。

expiry
datetimestr
預設值: None

共用存取簽章變成不正確時間。 除非指定參考包含此欄位之預存存取原則的識別碼,否則為必要專案。 如果已在相關聯的預存存取原則中指定,則必須省略此欄位。 Azure 一律會將值轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。

start
datetimestr
預設值: None

共用存取簽章生效的時間。 如果省略,此呼叫的開始時間會假設為儲存體服務收到要求的時間。 Azure 一律會將值轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。

id
str
預設值: None

長度上限為 64 個字元的唯一值,與預存存取原則相互關聯。 若要建立預存存取原則,請使用 set_container_acl

ip
str
預設值: None

指定要接受要求的 IP 位址或 IP 位址範圍。 如果要求的來源 IP 位址不符合 SAS 權杖上指定的 IP 位址或位址範圍,則不會驗證要求。 例如,在 SAS 上指定 sip=168.1.5.65 或 sip=168.1.5.60-168.1.5.70 會限制這些 IP 位址的要求。

protocol
str
預設值: None

指定要求允許的通訊協定。 預設值為 HTTPs,HTTP。 如需可能的值,請參閱<Protocol>。

cache_control
str
預設值: None

當使用此共用存取簽章存取資源時,Cache-Control 的回應標頭值。

content_disposition
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Disposition 的回應標頭值。

content_encoding
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Encoding 的回應標頭值。

content_language
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Language 的回應標頭值。

content_type
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Type 的回應標頭值。

user_delegation_key
UserDelegationKey
預設值: None

使用者可以傳入使用者委派金鑰,而不是帳戶金鑰。 您可以使用 AAD 身分識別進行驗證,以從服務取得使用者委派金鑰;呼叫 get_user_delegation_key即可完成此作業。 存在時,SAS 會改用使用者委派金鑰簽署。

傳回

共用存取簽章 (sas) 權杖。

傳回類型

str

generate_container_shared_access_signature

產生容器的共用存取簽章。 使用傳回的簽章搭配任何 BlobService 的 sas_token 參數。

generate_container_shared_access_signature(container_name, permission=None, expiry=None, start=None, id=None, ip=None, protocol=None, cache_control=None, content_disposition=None, content_encoding=None, content_language=None, content_type=None, user_delegation_key=None)

參數

container_name
str
必要

容器的名稱。

permission
ContainerPermissions
預設值: None

這些權限與共用存取簽章相關聯。 使用者只能執行這些權限允許的作業。 許可權必須排序為讀取、寫入、刪除、清單。 除非指定參考包含此欄位之預存存取原則的識別碼,否則為必要專案。 如果已在相關聯的預存存取原則中指定,則必須省略此欄位。

expiry
datetimestr
預設值: None

共用存取簽章變成不正確時間。 除非指定參考包含此欄位之預存存取原則的識別碼,否則為必要專案。 如果已在相關聯的預存存取原則中指定,則必須省略此欄位。 Azure 一律會將值轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。

start
datetimestr
預設值: None

共用存取簽章生效的時間。 如果省略,此呼叫的開始時間會假設為儲存體服務收到要求的時間。 Azure 一律會將值轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。

id
str
預設值: None

長度上限為 64 個字元的唯一值,與預存存取原則相互關聯。 若要建立預存存取原則,請使用 set_blob_service_properties。

ip
str
預設值: None

指定要接受要求的 IP 位址或 IP 位址範圍。 如果要求的來源 IP 位址不符合 SAS 權杖上指定的 IP 位址或位址範圍,則不會驗證要求。 例如,在 SAS 上指定 sip=168.1.5.65 或 sip=168.1.5.60-168.1.5.70 會限制這些 IP 位址的要求。

protocol
str
預設值: None

指定要求允許的通訊協定。 預設值為 HTTPs,HTTP。 如需可能的值,請參閱<Protocol>。

cache_control
str
預設值: None

當使用此共用存取簽章存取資源時,Cache-Control 的回應標頭值。

content_disposition
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Disposition 的回應標頭值。

content_encoding
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Encoding 的回應標頭值。

content_language
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Language 的回應標頭值。

content_type
str
預設值: None

當使用此共用存取簽章存取資源時,Content-Type 的回應標頭值。

user_delegation_key
UserDelegationKey
預設值: None

使用者可以傳入使用者委派金鑰,而不是帳戶金鑰。 您可以使用 AAD 身分識別進行驗證,以從服務取得使用者委派金鑰;呼叫 get_user_delegation_key即可完成此作業。 存在時,SAS 會改用使用者委派金鑰簽署。

傳回

共用存取簽章 (sas) 權杖。

傳回類型

str

get_blob_account_information

取得與儲存體帳戶相關的資訊。 如果使用者具有容器或 Blob 的 SAS,也可以擷取資訊。

get_blob_account_information(container_name=None, blob_name=None, timeout=None)

參數

container_name
str
預設值: None

現有容器的名稱。 選擇性,除非將 SAS 權杖用於特定容器或 Blob,在此情況下為必要專案。

blob_name
str
預設值: None

現有 Blob 的名稱。 選擇性,除非將 SAS 權杖用於特定 Blob,在此情況下為必要專案。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

AccountInformation

get_blob_metadata

傳回指定之 Blob 或快照集的所有使用者定義中繼資料。

get_blob_metadata(container_name, blob_name, snapshot=None, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

snapshot
str
預設值: None

快照集參數是不透明值,當存在時,會指定要擷取的 Blob 快照集。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰解密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

字典,表示 Blob 中繼資料名稱、值組。

傳回類型

get_blob_properties

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

get_blob_properties(container_name, blob_name, snapshot=None, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要擷取的 Blob 快照集。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰解密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

Blob 物件,包括屬性和中繼資料。

傳回類型

get_blob_service_properties

取得儲存體帳戶 Blob 服務的屬性,包括 Azure 儲存體分析。

get_blob_service_properties(timeout=None)

參數

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

具有附加target_version屬性的 Blob ServiceProperties

get_blob_service_stats

擷取與 Blob 服務的複寫相關的統計資料。 只有在儲存體帳戶啟用讀取權限異地備援複寫時,才能使用。

有了地理備援複寫,Azure 儲存體會以持久的方式在兩個位置維護您的資料。 在這兩個位置中,Azure 儲存體會持續維護狀況良好的多個資料複本。 您讀取、建立、更新或刪除資料的位置是「主要」儲存體帳戶的位置。 主要位置存在於您在透過 Azure 管理 Azure 傳統入口網站建立帳戶時所選擇的區域,例如美國中北部。 資料複寫的目標位置是「次要」位置。 次要位置是根據主要的位置自動判斷而來,它是與主要位置位於相同地區的第二個資料中心。 當儲存體帳戶啟用「讀取權限的地理備援複寫」時,可從次要位置使用唯讀權限。

get_blob_service_stats(timeout=None)

參數

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

blob 服務的統計資料。

傳回類型

get_blob_to_bytes

使用自動區塊處理和進度通知,將 Blob 下載為位元組陣列。 傳回 具有屬性、中繼資料和內容的 實例 Blob

get_blob_to_bytes(container_name, blob_name, snapshot=None, start_range=None, end_range=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要擷取的 Blob 快照集。

start_range
int
預設值: None

要用於下載 Blob 區段的位元組範圍開始。 如果未指定end_range,則會下載start_range之後的所有位元組。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

end_range
int
預設值: None

要用於下載 Blob 區段的位元組範圍結束。 如果提供end_range,則必須提供start_range。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

validate_content
bool
預設值: False

如果設定為 true,請針對 Blob 的每個擷取部分驗證 MD5 雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs, (預設) 已驗證,這主要對於偵測線路上的 bitflip 相當重要。 請注意,服務只會針對區塊 4MB 或更少傳回交易式 MD5,因此第一個取得要求的大小會是自我。MAX_CHUNK_GET_SIZE而不是自我。MAX_SINGLE_GET_SIZE。 如果為 self。MAX_CHUNK_GET_SIZE設定為大於 4MB,將會擲回錯誤。 當計算 MD5 需要處理時間,而且由於區塊大小降低而需要完成更多要求時,可能會有一些延遲增加。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,而且已知時,總計是 Blob 的大小。

max_connections
int
預設值: 2

如果設定為 2 或更新版本,則會針對第一個自我完成初始取得。MAX_SINGLE_GET_SIZE Blob 的位元組。 如果這是整個 Blob,則方法會在此時傳回。 如果沒有,則會使用等於max_connections的執行緒數目,來下載剩餘的資料平行。 每個區塊的大小都會是自我。MAX_CHUNK_GET_SIZE。 如果設定為 1,將會完成單一大型 get 要求。 這通常不建議使用,但如果應該使用非常少的執行緒、網路要求非常昂貴,或無法搜尋的資料流程會防止平行下載。 如果許多 Blob 預期為空的 Blob,如果max_connections大於 1,則需要額外的要求,這也可能很有用。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰解密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

傳回

具有屬性和中繼資料的 Blob。 如果max_connections大於 1,則不會傳回 blob 上設定的 content_md5 () 。 如果您需要此值,請使用 get_blob_properties 或將 max_connections 設定為 1。

傳回類型

get_blob_to_path

使用自動區塊化和進度通知,將 Blob 下載至檔案路徑。 傳回 具有屬性和中繼資料的 Blob 實例。

get_blob_to_path(container_name, blob_name, file_path, open_mode='wb', snapshot=None, start_range=None, end_range=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

file_path
str
必要

要寫入的檔案路徑。

open_mode
str
預設值: wb

開啟檔案時要使用的模式。 請注意,只指定附加open_mode可防止平行下載。 因此,如果使用這個open_mode,max_connections必須設定為 1。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要擷取的 Blob 快照集。

start_range
int
預設值: None

要用來下載 Blob 區段的位元組範圍開始。 如果未指定任何end_range,則會下載start_range之後的所有位元組。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

end_range
int
預設值: None

要用於下載 Blob 區段的位元組範圍結束。 如果提供end_range,則必須提供start_range。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

validate_content
bool
預設值: False

如果設定為 true,則會針對 Blob 的每個擷取部分驗證 MD5 雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,服務只會針對區塊 4MB 或更少傳回交易式 MD5,因此第一個取得要求的大小會是自我。MAX_CHUNK_GET_SIZE而非自我。MAX_SINGLE_GET_SIZE。 如果為 self。MAX_CHUNK_GET_SIZE設定為大於 4 MB,將會擲回錯誤。 由於區塊大小降低,因此計算 MD5 需要處理時間,而且需要完成更多要求,延遲可能會增加一些。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,以及已知為 Blob 的大小總計。

max_connections
int
預設值: 2

如果設定為 2 或更新版本,則會針對第一個自我完成初始取得。MAX_SINGLE_GET_SIZE Blob 的位元組。 如果這是整個 Blob,則此時會傳回 方法。 如果沒有,則會使用等於max_connections的執行緒數目,下載剩餘的資料平行。 每個區塊的大小都會是自我。MAX_CHUNK_GET_SIZE。 如果設定為 1,將會完成單一大型 get 要求。 這通常不建議使用,但如果應該使用非常少的執行緒、網路要求非常昂貴,或無法搜尋的資料流程會防止平行下載。 如果如果max_connections大於 1,則許多 Blob 預期為空的 Blob 需要額外的要求時,這也很有用。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰解密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

傳回

具有屬性和中繼資料的 Blob。 如果max_connections大於 1,則不會傳回在 blob 上設定的content_md5 () 。 如果您需要此值,請使用 get_blob_properties,或將 max_connections 設定為 1。

傳回類型

get_blob_to_stream

使用自動區塊化和進度通知,將 Blob 下載至資料流程。 傳回 具有屬性和中繼資料的 Blob 實例。

get_blob_to_stream(container_name, blob_name, stream, snapshot=None, start_range=None, end_range=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

stream
IOBase
必要

要寫入的已開啟資料流程。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要擷取的 Blob 快照集。

start_range
int
預設值: None

要用來下載 Blob 區段的位元組範圍開始。 如果未指定任何end_range,則會下載start_range之後的所有位元組。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

end_range
int
預設值: None

要用於下載 Blob 區段的位元組範圍結束。 如果提供end_range,則必須提供start_range。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

validate_content
bool
預設值: False

如果設定為 true,則會針對 Blob 的每個擷取部分驗證 MD5 雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,服務只會針對區塊 4MB 或更少傳回交易式 MD5,因此第一個取得要求的大小會是自我。MAX_CHUNK_GET_SIZE而非自我。MAX_SINGLE_GET_SIZE。 如果為 self。MAX_CHUNK_GET_SIZE設定為大於 4 MB,將會擲回錯誤。 由於區塊大小降低,因此計算 MD5 需要處理時間,而且需要完成更多要求,延遲可能會增加一些。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,以及已知為 Blob 的大小總計。

max_connections
int
預設值: 2

如果設定為 2 或更新版本,則會針對第一個自我完成初始取得。MAX_SINGLE_GET_SIZE Blob 的位元組。 如果這是整個 Blob,則此時會傳回 方法。 如果沒有,則會使用等於max_connections的執行緒數目,下載剩餘的資料平行。 每個區塊的大小都會是自我。MAX_CHUNK_GET_SIZE。 如果設定為 1,將會完成單一大型 get 要求。 這通常不建議使用,但如果應該使用非常少的執行緒、網路要求非常昂貴,或無法搜尋的資料流程會防止平行下載。 如果如果max_connections大於 1,則許多 Blob 預期為空的 Blob 需要額外的要求時,這也很有用。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰解密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

傳回

具有屬性和中繼資料的 Blob。 如果max_connections大於 1,則不會傳回在 blob 上設定的content_md5 () 。 如果您需要此值,請使用 get_blob_properties,或將 max_connections 設定為 1。

傳回類型

get_blob_to_text

使用自動區塊處理和進度通知,將 Blob 下載為 Unicode 文字。 傳回 具有屬性、中繼資料和內容的 實例 Blob

get_blob_to_text(container_name, blob_name, encoding='utf-8', snapshot=None, start_range=None, end_range=None, validate_content=False, progress_callback=None, max_connections=2, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

encoding
str
預設值: utf-8

解碼 Blob 資料時要使用的 Python 編碼方式。

snapshot
str
預設值: None

快照集參數是不透明的 DateTime 值,當存在時,會指定要擷取的 Blob 快照集。

start_range
int
預設值: None

要用於下載 Blob 區段的位元組範圍開始。 如果未指定end_range,則會下載start_range之後的所有位元組。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

end_range
int
預設值: None

要用於下載 Blob 區段的位元組範圍結束。 如果提供end_range,則必須提供start_range。 start_range和end_range參數皆包含。 例如:start_range=0,end_range=511 會下載前 512 個位元組的 Blob。

validate_content
bool
預設值: False

如果設定為 true,請針對 Blob 的每個擷取部分驗證 MD5 雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs, (預設) 已驗證,這主要對於偵測線路上的 bitflip 相當重要。 請注意,服務只會針對區塊 4MB 或更少傳回交易式 MD5,因此第一個取得要求的大小會是自我。MAX_CHUNK_GET_SIZE而不是自我。MAX_SINGLE_GET_SIZE。 如果為 self。MAX_CHUNK_GET_SIZE設定為大於 4MB,將會擲回錯誤。 當計算 MD5 需要處理時間,而且由於區塊大小降低而需要完成更多要求時,可能會有一些延遲增加。

progress_callback
<xref:func>(<xref:current>, <xref:total>)
預設值: None

簽章函式的進度回呼 (目前、目前) 目前傳輸的位元組數目,而且已知時,總計是 Blob 的大小。

max_connections
int
預設值: 2

如果設定為 2 或更新版本,則會針對第一個自我完成初始取得。MAX_SINGLE_GET_SIZE Blob 的位元組。 如果這是整個 Blob,則方法會在此時傳回。 如果沒有,則會使用等於max_connections的執行緒數目,來下載剩餘的資料平行。 每個區塊的大小都會是自我。MAX_CHUNK_GET_SIZE。 如果設定為 1,將會完成單一大型 get 要求。 這通常不建議使用,但如果應該使用非常少的執行緒、網路要求非常昂貴,或無法搜尋的資料流程會防止平行下載。 如果許多 Blob 預期為空的 Blob,如果max_connections大於 1,則需要額外的要求,這也可能很有用。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰解密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

傳回

具有屬性和中繼資料的 Blob。 如果max_connections大於 1,則不會傳回 blob 上設定的 content_md5 () 。 如果您需要此值,請使用 get_blob_properties 或將 max_connections 設定為 1。

傳回類型

get_block_list

擷取已上傳做為區塊 Blob 一部分的區塊清單。 Blob 使用兩個區塊清單:

已認可的封鎖清單:已成功認可至具有放置區塊清單的指定 Blob 的區塊清單。

未認可的封鎖清單:已使用 Put Block 為 Blob 上傳但尚未認可的區塊清單。 這些區塊儲存在 Azure 中並與 Blob 產生關聯,但尚未構成 Blob 的一部分。

get_block_list(container_name, blob_name, snapshot=None, block_list_type=None, lease_id=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

snapshot
str
預設值: None

用來判斷擷取區塊的時間的日期時間。

block_list_type
str
預設值: None

指定傳回認可的區塊清單、未認可的區塊清單,或兩種清單一起傳回。 有效值為:認可、未認可或全部。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

列出區塊 Blob 的已認可和/或未認可的區塊

傳回類型

get_container_acl

取得指定容器的許可權。 這些權限指出是否可以公開存取容器資料。

get_container_acl(container_name, lease_id=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_id
預設值: None

如果指定,則get_container_acl只有在容器的租用為作用中且符合此識別碼時才會成功。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

與容器相關聯的存取原則字典。 如果開啟公用存取,則為 str 的 AccessPolicy dict 和 public_access 屬性

get_container_metadata

傳回指定之容器的所有使用者定義中繼資料。

get_container_metadata(container_name, lease_id=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_id
str
預設值: None

如果指定,get_container_metadata只有在容器的租用為作用中且符合此識別碼時才會成功。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

字典,表示容器中繼資料名稱、值組。

傳回類型

get_container_properties

傳回指定容器的所有使用者定義中繼資料和系統屬性。 傳回的資料不包含容器的 Blob 清單。

get_container_properties(container_name, lease_id=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_id
str
預設值: None

如果指定,則get_container_properties只有在容器的租用為作用中且符合此識別碼時才會成功。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

容器物件內指定容器的屬性。

傳回類型

get_user_delegation_key

取得使用者委派金鑰以簽署 SAS 權杖。 權杖認證必須存在於服務物件上,此要求才能成功。

get_user_delegation_key(key_start_time, key_expiry_time, timeout=None)

參數

key_start_time
datetime
必要

日期時間值。 指出金鑰何時生效。

key_expiry_time
datetime
必要

日期時間值。 指出金鑰何時停止有效。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

使用者委派金鑰。

傳回類型

list_blob_names

傳回產生器,以列出指定容器下的 Blob 名稱。 產生器會延遲遵循服務所傳回的接續權杖,並在到達所有 Blob 或num_results時停止。

如果指定num_results,且帳戶的 Blob 數目超過該數目,則產生器會在完成之後填入next_marker欄位。 如果需要更多結果,可以使用此標記來建立新的產生器。

list_blob_names(container_name, prefix=None, num_results=None, include=None, delimiter=None, marker=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

prefix
str
預設值: None

篩選結果,只傳回名稱開頭為指定前置詞的 Blob。

num_results
int
預設值: None

指定要傳回的 Blob 數目上限,包括所有 <xref:azure.storage.blob.blockblobservice.BlobPrefix> 項目。 如果要求未指定num_results或指定大於 5,000 的值,伺服器最多會傳回 5,000 個專案。 將num_results設定為小於或等於零的值會導致錯誤回應碼 400 (錯誤要求) 。

include
Include
預設值: None

指定要包含在回應中的一或多個其他資料集。

delimiter
str
預設值: None

當要求包含這個參數時,作業會傳回 BlobPrefix 結果清單中的專案,做為名稱開頭為相同子字串的所有 Blob 的預留位置,最高為分隔符號的外觀。 此分隔符號可以是單一字元或字串。

marker
str
預設值: None

不透明接續權杖。 如果指定了num_results且產生器已完成列舉結果,則可以從先前產生器物件的next_marker欄位擷取此值。 如果指定,這個產生器會從先前產生器停止的點開始傳回結果。

timeout
int
預設值: None

timeout 參數以秒為單位。

list_blobs

傳回產生器,以列出指定容器底下的 Blob。 產生器會延遲遵循服務所傳回的接續權杖,並在到達所有 Blob 或num_results時停止。

如果指定了num_results,且帳戶的 Blob 數目超過該數目,則產生器會在完成時填入next_marker欄位。 如果需要更多結果,此標記可用來建立新的產生器。

list_blobs(container_name, prefix=None, num_results=None, include=None, delimiter=None, marker=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

prefix
str
預設值: None

篩選結果,只傳回名稱開頭為指定前置詞的 Blob。

num_results
int
預設值: None

指定要傳回的 Blob 數目上限,包括所有 <xref:azure.storage.blob.blockblobservice.BlobPrefix> 項目。 如果要求未指定num_results或指定大於 5,000 的值,則伺服器最多會傳回 5,000 個專案。 將num_results設定為小於或等於零的值會導致錯誤回應碼 400 (不正確的要求) 。

include
Include
預設值: None

指定要包含在回應中的一或多個額外資料集。

delimiter
str
預設值: None

當要求包含此參數時,作業會傳回 BlobPrefix 結果清單中的專案,做為名稱開頭為相同子字串的所有 Blob 的預留位置,最多到分隔符號的外觀。 此分隔符號可以是單一字元或字串。

marker
str
預設值: None

不透明的接續權杖。 如果指定num_results且該產生器已完成列舉結果,則可以從先前產生器物件的next_marker欄位擷取此值。 如果指定,這個產生器會從先前產生器停止的點開始傳回結果。

timeout
int
預設值: None

timeout 參數以秒為單位。

list_containers

傳回產生器,以列出指定帳戶下的容器。 產生器會延遲遵循服務所傳回的接續權杖,並在到達所有容器或num_results時停止。

如果指定了num_results,且帳戶的容器數目超過該數目,則產生器會在完成之後填入next_marker欄位。 如果需要更多結果,此標記可用來建立新的產生器。

list_containers(prefix=None, num_results=None, include_metadata=False, marker=None, timeout=None)

參數

prefix
str
預設值: None

篩選結果,只傳回名稱開頭為指定前置詞的容器。

num_results
int
預設值: None

指定要傳回的最大容器數目。 單一清單要求最多可能會傳回 1000 個 contianers,而且可能會傳回接續權杖,而接續權杖應遵循以取得額外的重試。

include_metadata
bool
預設值: False

指定在回應中傳回容器中繼資料。

marker
str
預設值: None

不透明的接續權杖。 如果指定num_results且該產生器已完成列舉結果,則可以從先前產生器物件的next_marker欄位擷取此值。 如果指定,這個產生器會從先前產生器停止的點開始傳回結果。

timeout
int
預設值: None

timeout 參數以秒為單位。

make_blob_url

建立 URL 以存取 Blob。

make_blob_url(container_name, blob_name, protocol=None, sas_token=None, snapshot=None)

參數

container_name
str
必要

容器的名稱。

blob_name
str
必要

Blob 的名稱。

protocol
str
預設值: None

要使用的通訊協定:'HTTP' 或 'HTTPs'。 如果未指定,請使用初始化 BaseBlobService 時指定的通訊協定。

sas_token
str
預設值: None

使用 generate_shared_access_signature 建立的共用存取簽章權杖。

snapshot
str
預設值: None

可唯一識別快照集的字串值。 這個查詢參數的值表示快照集版本。

傳回

Blob 存取 URL。

傳回類型

str

make_container_url

建立 URL 以存取容器。

make_container_url(container_name, protocol=None, sas_token=None)

參數

container_name
str
必要

容器的名稱。

protocol
str
預設值: None

要使用的通訊協定:'HTTP' 或 'HTTPs'。 如果未指定,請使用初始化 BaseBlobService 時指定的通訊協定。

sas_token
str
預設值: None

使用 generate_shared_access_signature 建立的共用存取簽章權杖。

傳回

容器存取 URL。

傳回類型

str

put_block

建立新區塊,並認可為 Blob 的一部分。

put_block(container_name, blob_name, block, block_id, validate_content=False, lease_id=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

Blob 的名稱。

block
IOBase 或 <xref:<xref:bytes Content> of <xref:the block.>>
必要

區塊的內容。

block_id
str
必要

識別區塊的字串值。 字串的大小應該小於或等於 64 個位元組。 針對指定的 Blob,每個區塊block_id的大小必須相同。

validate_content
bool
預設值: False

如果為 true,則計算區塊內容的 MD5 雜湊。 儲存體服務會檢查與已傳送雜湊一起抵達之內容的雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,此 MD5 雜湊不會隨 Blob 儲存。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

put_block_from_url

建立新區塊,並認可為 Blob 的一部分。

put_block_from_url(container_name, blob_name, copy_source_url, block_id, source_range_start=None, source_range_end=None, source_content_md5=None, lease_id=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

Blob 的名稱。

copy_source_url
str
必要

來源資料的 URL。 它可以指向任何連結公用或共用存取簽章的 Azure Blob 或檔案。

source_range_start
int
預設值: None

這表示必須取自複製來源的位元組範圍 () 範圍。

source_range_end
int
預設值: None

這表示必須取自複製來源的位元組範圍 (包含) 結尾。

block_id
str
必要

識別區塊的字串值。 字串的大小應該小於或等於 64 個位元組。 針對指定的 Blob,每個區塊block_id的大小必須相同。

source_content_md5
str
預設值: None

如果指定,服務會計算區塊內容的 MD5 雜湊,並比較此值。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

put_block_list

透過指定組成 Blob 的區塊識別碼清單,將 Blob 寫入。 若要將 區塊寫入為 Blob 的一部分,區塊必須在先前的 Put Block 作業中成功寫入伺服器。

您可以只上傳已變更的區塊,然後一起認可新的和現有的區塊,呼叫 Put Block List 來更新 Blob。 若要達成此目的,您可從認可的區塊清單或未認可的區塊清單中的區塊指定是否要認可此區塊,或認可最近上傳的區塊版本 (而不論其所屬的清單為何)。

put_block_list(container_name, blob_name, block_list, content_settings=None, metadata=None, validate_content=False, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, standard_blob_tier=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

block_list
list(BlobBlock)
必要

清單, <xref:azure.storeage.blob.models.BlobBlock> 其中包含區塊識別碼和區塊狀態。

content_settings
ContentSettings
預設值: None

用來設定 Blob 屬性的 ContentSettings 物件。

metadata
dict(str, str)
預設值: None

與 Blob 相關聯的名稱/值組,可做為中繼資料。

validate_content
bool
預設值: False

如果為 true,則會計算區塊清單內容的 MD5 雜湊。 儲存體服務會檢查已與已傳送之雜湊一起抵達之區塊清單內容的雜湊。 如果使用 HTTP 而非 HTTPs 作為 HTTPs,則這主要對於偵測連線上的 bitflip 很有用, (預設) 將已經過驗證。 請注意,這項檢查與區塊清單內容相關聯,而不是與 Blob 本身的內容相關聯。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

standard_blob_tier
StandardBlobTier
預設值: None

要設定 Blob 的標準 Blob 層值。 對於此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。

傳回

已更新區塊 Blob 的 ETag 和上次修改屬性

傳回類型

release_blob_lease

釋放租用。 如果在要求上指定的租用識別碼符合該 Blob 相關聯的租用,則可以釋放租用。 釋放租用可讓其他用戶端在釋放完成時,立即取得 Blob 的租用。

release_blob_lease(container_name, blob_name, lease_id, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

lease_id
str
必要

使用中租用的租用識別碼。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

timeout
int
預設值: None

timeout 參數以秒為單位。

release_container_lease

釋放租用。 如果指定的lease_id符合與容器相關聯的,可能會釋放租用。 釋放租用可讓其他用戶端在釋放完成時,立即取得容器的租用。

release_container_lease(container_name, lease_id, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_id
str
必要

使用中租用的租用識別碼。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

renew_blob_lease

更新租用。 如果在要求上指定的租用識別碼符合該 Blob 相關聯的租用,則租用可以更新。 請注意,租用到期之後,只要 Blob 未曾修改或再度租用,即使租用已到期,還是可以更新。 當您更新租用時,租用持續時間的時鐘會重設。

renew_blob_lease(container_name, blob_name, lease_id, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

lease_id
str
必要

使用中租用的租用識別碼。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

字串

renew_container_lease

更新租用。 如果指定的租用識別碼符合與容器相關聯的租用識別碼,則可以更新租用。 請注意,租用到期之後,只要容器未曾再度租用,即使租用已過期,還是可以更新。 當您更新租用時,租用持續時間的時鐘會重設。

renew_container_lease(container_name, lease_id, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

lease_id
str
必要

使用中租用的租用識別碼。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

字串

set_blob_metadata

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

set_blob_metadata(container_name, blob_name, metadata=None, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

metadata
dict(str, str)
預設值: None

包含名稱和值組的聽寫。 每次呼叫這項作業都會取代附加至 Blob 的所有現存中繼資料。 若要從 Blob 移除所有中繼資料,請呼叫這項作業並且不使用中繼資料標頭。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

已更新 Blob 的 ETag 和上次修改的屬性

傳回類型

set_blob_properties

在 Blob 上設定系統屬性。 如果已針對content_settings設定一個屬性,則會覆寫所有屬性。

set_blob_properties(container_name, blob_name, content_settings=None, lease_id=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

content_settings
ContentSettings
預設值: None

用來設定 Blob 屬性的 ContentSettings 物件。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定這個標頭來執行作業。指定萬用字元 () ,只有在資源不存在時,才能執行作業,如果作業不存在,則會失敗。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線以傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

已更新 Blob 的 ETag 和上次修改的屬性

傳回類型

set_blob_service_properties

設定儲存體帳戶 Blob 服務的屬性,包括 Azure 儲存體分析。 如果專案 (例如記錄) 保留為 None,則會保留該服務上該功能的現有設定。

set_blob_service_properties(logging=None, hour_metrics=None, minute_metrics=None, cors=None, target_version=None, timeout=None, delete_retention_policy=None, static_website=None)

參數

logging
Logging
預設值: None

將 Azure Analytics 記錄設定分組。

hour_metrics
Metrics
預設值: None

小時計量設定會針對 Blob 每小時匯總,提供依 API 分組的要求統計資料摘要。

minute_metrics
Metrics
預設值: None

分鐘計量設定會針對 Blob 的每個分鐘提供要求統計資料。

cors
list(CorsRule)
預設值: None

您可以在清單中包含最多五個 CorsRule 元素。 如果指定了空白清單,則會刪除所有 CORS 規則,且服務會停用 CORS。

target_version
str
預設值: None

指出未指定傳入要求版本時,要用於要求的預設版本。

timeout
int
預設值: None

timeout 參數以秒為單位。

delete_retention_policy
DeleteRetentionPolicy
預設值: None

刪除保留原則會指定是否要保留已刪除的 Blob。 它也會指定要保留的 Blob 天數和版本。

static_website
StaticWebsite
預設值: None

指定是否啟用靜態網站功能,如果是,則表示要使用的索引檔和 404 錯誤檔。

set_container_acl

設定可搭配共用存取簽章使用的指定容器或預存存取原則的許可權。 這些權限指出是否可以公開存取容器中的 Blob。

set_container_acl(container_name, signed_identifiers=None, public_access=None, lease_id=None, if_modified_since=None, if_unmodified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

signed_identifiers
dict(str, AccessPolicy)
預設值: None

要與容器建立關聯的存取原則字典。 字典最多可以包含 5 個元素。 空的字典會清除服務上設定的存取原則。

public_access
PublicAccess
預設值: None

可能的值包括:容器、Blob。

lease_id
str
預設值: None

如果指定,set_container_acl只有在容器的租用作用中且符合此識別碼時才會成功。

if_modified_since
datetime
預設值: None

datetime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 指定此標頭,只有在資源自指定的日期/時間以來已修改時,才執行作業。

if_unmodified_since
datetime
預設值: None

datetime 值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

已更新容器的 ETag 和上次修改的屬性

傳回類型

set_container_metadata

為指定的容器設定一或多個使用者定義的名稱/值組。 每次呼叫這項作業都會取代附加至容器之所有現有的中繼資料。 若要從容器中移除所有中繼資料,請呼叫沒有中繼資料聽寫的這項作業。

set_container_metadata(container_name, metadata=None, lease_id=None, if_modified_since=None, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

metadata
dict(str, str)
預設值: None

包含要與容器建立關聯做為中繼資料之名稱/值組的聽寫。 範例: {'category':'test'}

lease_id
str
預設值: None

如果指定,set_container_metadata只有在容器的租用作用中且符合此識別碼時才會成功。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

已更新容器的 ETag 和上次修改的屬性

傳回類型

set_proxy

設定 HTTP CONNECT Tunnelling 的 Proxy 伺服器主機和埠。

set_proxy(host, port, user=None, password=None)

參數

host
str
必要

Proxy 的位址。 例如:'192.168.0.100'

port
int
必要

Proxy 的埠。 例如:6000

user
str
預設值: None

Proxy 授權的使用者。

password
str
預設值: None

Proxy 授權的密碼。

set_standard_blob_tier

設定 Blob 上的區塊 Blob 層。 只有標準儲存體帳戶上的區塊 Blob 才支援此 API。

:p aram RehydratePriority rehydrate_priority:指出將封存 Blob 解除凍結的優先順序

set_standard_blob_tier(container_name, blob_name, standard_blob_tier, timeout=None, rehydrate_priority=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

要更新的 Blob 名稱。

standard_blob_tier
StandardBlobTier
必要

要設定 Blob 的標準 Blob 層值。 對於此版本的程式庫,這只適用于標準儲存體帳戶上的區塊 Blob。

timeout
int
預設值: None

timeout 參數以秒為單位。 這個方法可能會對 Azure 服務進行多個呼叫,而逾時會個別套用至每個呼叫。

rehydrate_priority
預設值: None

snapshot_blob

建立 Blob 的唯讀快照集。

snapshot_blob(container_name, blob_name, metadata=None, if_modified_since=None, if_unmodified_since=None, if_match=None, if_none_match=None, lease_id=None, timeout=None, cpk=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

metadata
dict(str, str)
預設值: None

指定與 Blob 相關聯之使用者定義的名稱/值組。 如果未指定名稱/值組,這項作業會將基底 Blob 的中繼資料複製到快照集。 如果指定了一個或多個名稱/值組,則會使用指定的中繼資料建立快照集,而不會從基底 Blob 複製中繼資料。

if_modified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime
預設值: None

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

if_match
str
預設值: None

ETag 值,或萬用字元 (*)。 只有資源的 ETag 與指定的值相符,才能指定此標頭執行作業。

if_none_match
str
預設值: None

ETag 值或萬用字元 () 。只有當資源的 ETag 不符合指定的值時,才指定此標頭來執行作業。指定萬用字元 () ,只有在資源不存在時才會執行作業,如果作業不存在,則會使作業失敗。

lease_id
str
預設值: None

如果 Blob 具有作用中租用,則為必要項目。

cpk
CustomerProvidedEncryptionKey
預設值: None

使用指定的金鑰加密服務端的資料。 您必須透過 HTTPS 使用客戶提供的金鑰。 在要求中提供加密金鑰本身時,必須建立安全連線才能傳輸金鑰。

timeout
int
預設值: None

timeout 參數以秒為單位。

傳回

快照集屬性

傳回類型

undelete_blob

取消刪除 Blob 作業會還原虛刪除 Blob 或快照集的內容和中繼資料。 嘗試取消刪除未虛刪除的 Blob 或快照集將會成功,而不會進行任何變更。

undelete_blob(container_name, blob_name, timeout=None)

參數

container_name
str
必要

現有容器的名稱。

blob_name
str
必要

現有 Blob 的名稱。

timeout
int
預設值: None

timeout 參數以秒為單位。

屬性

protocol

request_session

socket_timeout

MAX_BLOCK_SIZE

MAX_BLOCK_SIZE = 4194304

MAX_CHUNK_GET_SIZE

MAX_CHUNK_GET_SIZE = 4194304

MAX_SINGLE_GET_SIZE

MAX_SINGLE_GET_SIZE = 33554432

MAX_SINGLE_PUT_SIZE

MAX_SINGLE_PUT_SIZE = 67108864

MIN_LARGE_BLOCK_UPLOAD_THRESHOLD

MIN_LARGE_BLOCK_UPLOAD_THRESHOLD = 4194305