48.5.3. 处理丢弃的连接

概述

可以添加一个回调来处理客户端连接丢失的情况。

ConnectionCallback 接口

要为丢弃的连接添加回调,您必须实现 javax.ws.rs.container.ConnectionCallback 接口,该接口定义如下:

// Java
package javax.ws.rs.container;

public interface ConnectionCallback {
    public void onDisconnect(AsyncResponse disconnected);
}

注册连接回调

在实施连接回调后,您必须调用其中一个 寄存器 方法将它注册到当前的 AsyncResponse 对象。例如,若要注册类型为 MyConnectionCallback 的连接回调:

asyncResponse.register(new MyConnectionCallback());

连接回调的典型场景

通常,实施连接回调的主要原因是,释放与丢弃客户端连接关联的资源(您可以使用 AsyncResponse 实例作为键,以标识需要释放的资源)。