【发布时间】:2017-12-05 00:07:10
【问题描述】:
我正在使用 Jetty 编写 Websocket 服务器。
我的处理程序代码:
public class WebSocketServerHandler {
@OnWebSocketClose
public void onClose(int statusCode, String reason) {
System.out.println("Close: statusCode=" + statusCode + ", reason=" + reason);
}
@OnWebSocketError
public void onError(Throwable t) {
}
@OnWebSocketConnect
public void onConnect(Session session) {
}
@OnWebSocketMessage
public void onMessage(Session session, String message) {
}
@OnWebSocketMessage
public void onBinaryMethod(Session session, byte data[], int offset, int length) {
}
}
我的一个要求是根据业务逻辑 insde onBinaryMethod 发送自定义状态码
例如:发送 1001 作为超时状态码(Jetty 已经支持这个)
我不确定在哪里设置这些状态代码。我已经尝试过,但似乎不起作用。
Session().getUpgradeResponse().setStatusCode();
【问题讨论】:
-
您询问的是哪个状态码?您似乎混淆了 HTTP 响应状态代码(3 位)和 WebSocket 关闭状态代码(4 位)。
标签: java websocket server jetty