1

在旧版本的码头(7 和 8)上,我们有一个用于 websockets 的 onFrame(http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/websocket/WebSocket.OnFrame.html)事件. 版本 9 中是否有等价物?他们有 WebSocketListener ( http://download.eclipse.org/jetty/stable-9/apidocs/org/eclipse/jetty/websocket/api/WebSocketListener.html ) 接口,但没有定义 onFrame 方法。

谢谢

4

1 回答 1

2

您将需要使用带注释的 websocket 来访问 websocket 框架。

Java 文档:

示例套接字:

package examples;

import org.eclipse.jetty.websocket.api.Session;
import org.eclipse.jetty.websocket.api.annotations.OnWebSocketClose;
import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect;
import org.eclipse.jetty.websocket.api.annotations.OnWebSocketFrame;
import org.eclipse.jetty.websocket.api.annotations.WebSocket;
import org.eclipse.jetty.websocket.api.extensions.Frame;

@WebSocket
public class AnnotatedFramesSocket
{
    @OnWebSocketClose
    public void onClose(int statusCode, String reason)
    {
        System.out.printf("onClose(%d, %s)%n",statusCode,reason);
    }

    @OnWebSocketConnect
    public void onConnect(Session sess)
    {
        System.out.printf("onConnect(%s)%n",sess);
    }

    @OnWebSocketFrame
    public void onFrame(Frame frame)
    {
        System.out.printf("onFrame(%s)%n",frame);
    }
}

现在,我要问,为什么需要访问扩展后处理的帧?

于 2013-04-26T20:44:06.640 回答