強制關閉控點

Force Close Handles 作業會關閉在目錄或檔案上開啟的控制碼或控制碼。 它支援關閉檔案或目錄上的控制碼識別碼所指定的單一控制碼。 它也支援關閉在該資源上開啟的所有控制碼。 當資源是目錄時,它選擇性地支援以遞迴方式關閉子資源上的控制碼。

您可以搭配 清單控制碼 使用此作業來強制關閉封鎖作業的控制碼,例如重新命名目錄。 SMB 用戶端可能會流失或遺失這些控制碼的追蹤。 作業會對您關閉的控制碼造成用戶端影響,包括因為嘗試讀取或寫入檔案失敗而導致的使用者可見錯誤。 這項作業並非用來取代或替代關閉 SMB 會話。

這項作業可在 2018-11-09 版和更新版本中取得。

通訊協定可用性

已啟用檔案共用通訊協定 可用
SMB 是
NFS 否

要求

您可以依照下列方式建構 Force Close Handles 要求。 我們建議使用 HTTPS。

方法 要求 URI HTTP 版本
PUT https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfileordirectory?comp=forceclosehandles HTTP/1.1

將要求 URI 中的路徑元件取代為您自己的路徑元件,如下所示:

路徑元件 Description
myaccount 儲存體帳戶的名稱。
myshare 檔案共用的名稱。
mydirectorypath 選擇性。 目錄的路徑。
myfileordirectory 檔案或目錄的名稱。

如需路徑命名限制的詳細資訊,請參閱 命名和參考共用、目錄、檔案和中繼資料

URI 參數

您可以在 URI 上指定下列其他參數:

參數 描述
timeout 選擇性。 以碼錶示。 如需詳細資訊,請參閱 設定檔案服務作業的逾時
marker 選擇性。 字串值,識別將使用下一個 Force Close Handles 作業關閉的控制碼位置。 如果有更多要關閉的控制碼,此作業會傳迴響應主體內的標記值。 標記值接著可以在後續呼叫中使用,以關閉下一組控制碼。

此標記值對於用戶端為不透明。
sharesnapshot 選擇性。 不透明日期/時間值。 存在時,它會指定要查詢控制碼清單的共用快照集。

要求標頭

下表描述必要和選擇性的要求標頭:

要求標頭 描述
Authorization 必要。 指定授權配置、帳戶名稱和簽章。 如需詳細資訊,請參閱授權對 Azure 儲存體提出要求
Datex-ms-date 必要。 指定要求的「國際標準時間」(UTC)。 如需詳細資訊,請參閱授權對 Azure 儲存體提出要求
x-ms-version 所有授權要求都需要 ,但匿名要求則為選擇性。 指定用於這個要求的作業版本。 如需詳細資訊,請參閱 Azure 儲存體服務的版本
x-ms-client-request-id 選擇性。 提供用戶端產生的不透明值,其中包含 1-kibibyte (KiB) 設定記錄時記錄在記錄中的字元限制。 強烈建議您使用此標頭,將用戶端活動與伺服器收到的要求相互關聯。
x-ms-handle-id 必要。 指定要關閉的控制碼識別碼。 使用星號 (*) 作為萬用字元字串來指定所有控制碼。
x-ms-recursive 選擇性。 布林值,指定作業是否也應該套用至 URI 中所指定目錄的檔案和子目錄。
x-ms-file-request-intent 如果 Authorization 標頭指定 OAuth 權杖,則為必要專案。 可接受的值為 backup 。 此標頭會 Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action 指定如果指派給使用 Authorization 標頭授權之身分識別的 RBAC 原則中包含 或 Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action ,則應該授與 或 。 適用于 2022-11-02 版和更新版本。
x-ms-allow-trailing-dot: { <Boolean> } 選擇性。 版本 2022-11-02 和更新版本。 布林值會指定是否應該修剪要求 URL 中的尾端點。 如需詳細資訊,請參閱 命名和參考共用、目錄、檔案和中繼資料

要求本文

無。

回應

回應包括 HTTP 狀態碼、一組回應標頭和 XML 格式的回應主體。

狀態碼

成功的作業會傳回狀態碼 200 (OK)。

如需狀態碼的相關資訊,請參閱 狀態和錯誤碼

回應標頭

這項作業的回應包括下列標頭。 回應也可能包含其他標準 HTTP 標頭。 所有標準標頭都符合 HTTP/1.1 通訊協定規格

回應標頭 描述
x-ms-request-id 可唯一識別所提出的要求。 您可以使用它對要求進行疑難排解。 如需詳細資訊,請參閱 針對 API 作業進行疑難排解
x-ms-version 指出用來執行要求的Azure 檔案儲存體版本。
Date UTC 日期/時間值,指出服務傳送回應的時間。
x-ms-marker 描述要關閉的下一個控制碼。 當需要關閉更多控制碼才能完成要求時,就會傳回此字串。 字串會用於後續的要求中,以強制關閉剩餘的控制碼。 缺少 x-ms-marker 表示所有相關控制碼已關閉。
x-ms-number-of-handles-closed 指出已關閉的控制碼數目。
x-ms-number-of-handles-failed 指出無法關閉的控制碼數目。
x-ms-client-request-id 可用來針對要求和對應的回應進行疑難排解。 如果此標頭存在於要求中,此標頭的值等於標頭的值 x-ms-client-request-id ,且此值最多為 1,024 個可見的 ASCII 字元。 x-ms-client-request-id如果要求中沒有標頭,則回應中不會顯示此標頭。

回應本文

空白。

授權

只有帳戶擁有者可以呼叫這項作業。

備註

例如,如果在處理要求期間未關閉任何控制碼 (,則提供的 x-ms-handle-id 值會指定不正確控制碼,或在提供的檔案或目錄中找不到開啟的控制碼,) 您會收到 200 (OK) 狀態回應 x-ms-number-of-handles-closed=0

標頭 x-ms-recursive 僅適用于目錄。 如果您為檔案指定它,您會收到 400 (不正確的要求) 回應。

強制關閉以 開啟 FILE_FLAG_DELETE_ON_CLOSE 的控制碼,可能不會刪除檔案。

清單控制碼x-ms-handle-id 傳回服務端控制碼識別碼。 此控制碼識別碼與 SMB 或應用程式所維護的對應用戶端控制碼不同。

另請參閱