2013-04-26 79 views

回答

2

您将需要使用注释的WebSockets以访问WebSocket的框架。

的Javadoc:

例插槽:

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); 
    } 
} 

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

+0

看来我不需要。不知何故,我认为这是预处理帧。 – 2013-04-27 10:52:30

+1

@DouaBeri没有API访问来自网络的原始帧,即使在Jetty 7/8上也没有。您获得的框架在到达特定WebSocket端点时已通过扩展堆栈进行处理。注意:永远不会有这种访问,所讨论的扩展(特别是多路复用)会使这个过于复杂。 – 2013-04-27 19:46:40

相关问题