BlobLeaseClient 類別
建立新的 BlobLeaseClient。
此用戶端會在 BlobClient 或 ContainerClient 上提供租用作業。
- 繼承
-
azure.storage.blob._lease.BlobLeaseClientBlobLeaseClient
建構函式
BlobLeaseClient(client: BlobClient | ContainerClient, lease_id: str | None = None)
參數
變數
- id
- str
目前正在維護的租用識別碼。 如果尚未取得租用,這會是 None 。
- etag
- str
目前正在維護租用的 ETag。 如果尚未取得或修改租用,這會是 None 。
- last_modified
- datetime
目前正在維護租用的最後一個修改時間戳記。 如果尚未取得或修改租用,這會是 None 。
方法
acquire |
要求新的租用。 如果容器沒有作用中的租用,Blob 服務會在容器上建立租用,並傳回新的租用識別碼。 |
break_lease |
如果容器或 Blob 有作用中的租用,請中斷租用。 一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外,可以在容器或 Blob 上執行任何租用作業。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。 |
change |
變更使用中租用的租用識別碼。 |
release |
釋放租用。 如果指定的用戶端租用識別碼符合與容器或 Blob 相關聯的識別碼,則可能會釋放租用。 釋放租用可讓另一個用戶端在發行完成後立即取得容器或 Blob 的租用。 |
renew |
更新租用。 如果租用用戶端中指定的租用識別碼符合與容器或 Blob 相關聯的租用識別碼,則可以更新租用。 請注意,即使租用自該租用到期後尚未再次租用容器或 Blob,仍可能會更新租用。 當您更新租用時,租用持續時間的時鐘會重設。 |
acquire
要求新的租用。
如果容器沒有作用中的租用,Blob 服務會在容器上建立租用,並傳回新的租用識別碼。
async acquire(lease_duration: int = -1, **kwargs: Any) -> None
參數
- lease_duration
- int
指定租用的持續時間 (秒數),或指定負一 (-1),代表租用永不到期。 非無限期的租用可以介於 15 到 60 秒之間。 無法使用續約或變更來變更租用持續時間。 預設值為 -1 (無限租用) 。
- if_modified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。
- if_unmodified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。
- etag
- str
ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。
- match_condition
- MatchConditions
要用於 etag 的比對條件。
- if_tags_match_condition
- str
指定 Blob 標籤上的 SQL where 子句,以只在具有相符值的 Blob 上運作。
例如 "\"tagname\"='my tag'"
12.4.0 版的新功能。
- timeout
- int
以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://video2.skills-academy.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 此值不會在用戶端上追蹤或驗證。 若要設定用戶端網路逾時,請參閱 這裡。
傳回類型
break_lease
如果容器或 Blob 有作用中的租用,請中斷租用。
一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外,可以在容器或 Blob 上執行任何租用作業。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。
async break_lease(lease_break_period: int | None = None, **kwargs: Any) -> int
參數
- lease_break_period
- int
這是租用在中斷之前應該繼續的建議持續時間,介於 0 到 60 秒之間。 只有在比租用的剩餘時間還短時,才會使此中斷期。 如果時間較長,則會使用租用的剩餘時間。 在中斷期到期之前,將無法使用新的租用,但是保留租用的時間可以比中斷期還長。 如果此標頭未與中斷作業一起出現,則固定持續時間租用會在剩餘租用期間經過之後中斷,而無限租用會立即中斷。
- if_modified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。
- if_unmodified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。
- if_tags_match_condition
- str
指定 Blob 標籤上的 SQL where 子句,以只在具有相符值的 Blob 上運作。
例如 "\"tagname\"='my tag'"
12.4.0 版的新功能。
- timeout
- int
以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://video2.skills-academy.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 此值不會在用戶端上追蹤或驗證。 若要設定用戶端網路逾時,請參閱 這裡。
傳回
在租用期間內保留的近似時間 (以秒計)。
傳回類型
change
變更使用中租用的租用識別碼。
async change(proposed_lease_id: str, **kwargs: Any) -> None
參數
- if_modified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。
- if_unmodified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。
- etag
- str
ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。
- match_condition
- MatchConditions
要用於 etag 的比對條件。
- if_tags_match_condition
- str
指定 Blob 標籤上的 SQL where 子句,以只在具有相符值的 Blob 上運作。
例如 "\"tagname\"='my tag'"
12.4.0 版的新功能。
- timeout
- int
以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://video2.skills-academy.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 此值不會在用戶端上追蹤或驗證。 若要設定用戶端網路逾時,請參閱 這裡。
傳回
無
release
釋放租用。
如果指定的用戶端租用識別碼符合與容器或 Blob 相關聯的識別碼,則可能會釋放租用。 釋放租用可讓另一個用戶端在發行完成後立即取得容器或 Blob 的租用。
async release(**kwargs: Any) -> None
參數
- if_modified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。
- if_unmodified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。
- etag
- str
ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。
- match_condition
- MatchConditions
要用於 etag 的比對條件。
- if_tags_match_condition
- str
指定 Blob 標籤上的 SQL where 子句,以只在具有相符值的 Blob 上運作。
例如 "\"tagname\"='my tag'"
12.4.0 版的新功能。
- timeout
- int
以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://video2.skills-academy.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 此值不會在用戶端上追蹤或驗證。 若要設定用戶端網路逾時,請參閱 這裡。
傳回
無
renew
更新租用。
如果租用用戶端中指定的租用識別碼符合與容器或 Blob 相關聯的租用識別碼,則可以更新租用。 請注意,即使租用自該租用到期後尚未再次租用容器或 Blob,仍可能會更新租用。 當您更新租用時,租用持續時間的時鐘會重設。
async renew(**kwargs: Any) -> None
參數
- if_modified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。
- if_unmodified_since
- datetime
日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。
- etag
- str
ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。
- match_condition
- MatchConditions
要用於 etag 的比對條件。
- if_tags_match_condition
- str
指定 Blob 標籤上的 SQL where 子句,以只在具有相符值的 Blob 上運作。
例如 "\"tagname\"='my tag'"
12.4.0 版的新功能。
- timeout
- int
以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://video2.skills-academy.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 此值不會在用戶端上追蹤或驗證。 若要設定用戶端網路逾時,請參閱 這裡。
傳回
無