你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

强制关闭句柄

Force Close Handles作关闭在目录或文件上打开的句柄或句柄。 它支持关闭由文件或目录上的句柄 ID 指定的单个句柄。 它还支持关闭在该资源上打开的所有句柄。 它(可选)支持在资源是目录时以递归方式关闭子资源上的句柄。

将此作与 列表句柄一起使用, 强制关闭阻止作的句柄,例如重命名目录。 SMB 客户端可能会泄露或丢失这些句柄的跟踪。 该作会对要关闭的句柄产生客户端影响,包括由于尝试读取或写入文件失败而导致的用户可见错误。 此作不用作关闭 SMB 会话的替代或替代方法。

此作在版本 2018-11-09 及更高版本中可用。

协议可用性

已启用文件共享协议 可用
SMB 是
NFS 无

请求

Force Close Handles 请求构造如下。 建议使用 HTTPS。

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

将请求 URI 中显示的路径组件替换为你自己的路径组件,如下所示:

路径组件 描述
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 必填。 指定要关闭的句柄 ID。 使用星号 \ 作为通配符字符串来指定所有句柄。
x-ms-recursive 自选。 一个布尔值,指定作是否还应应用于 URI 中指定的目录的文件和子目录。
x-ms-file-request-intent 如果需要 Authorization 标头指定 OAuth 令牌。 可接受的值为 backup。 此标头指定,如果 Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/actionMicrosoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/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(正常)。 有关状态代码的信息,请参阅 状态和错误代码

响应标头

此作的响应包括下表中的标头。 响应还可能包括其他标准 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 值指定无效句柄,或者在提供的文件或目录中找不到打开的句柄),则会收到包含 x-ms-number-of-handles-closed=0的 200 (OK) 状态响应。

x-ms-recursive 标头仅对目录有效。 如果为文件指定它,则会收到 400 (请求错误)响应。

强制关闭使用 FILE_FLAG_DELETE_ON_CLOSE 打开的句柄可能会导致文件被删除。

列表句柄 返回 x-ms-handle-id 服务端句柄 ID。 此句柄 ID 不同于 SMB 或应用程序维护的相应客户端句柄。

另请参阅

  • 对文件
  • 目录上的