相关疑难解决方法(0)

如何增加spring sockjs websocket服务器实现的输出缓冲区

我使用了sockjs websocket服务器的spring实现,无法传输超过8KB的消息,以下是错误

2014-02-12 19:36:29,990 - org.springframework.web.socket.sockjs.transport.session.WebSocketServerSockJsSession - DEBUG - SockJS session id=35n41xel was closed, CloseStatus [code=1009, reason=The decoded text message was too big for the output buffer and the endpoint does not support partial messages]
Run Code Online (Sandbox Code Playgroud)

任何想法如何增加缓冲区大小


我使用以下工厂作为spring sockjs利用tomcat容器(App部署在tomcat中,我也调试确认它确实使用了tomcat lib)

@Bean
public WebSocketContainerFactoryBean createWebSocketContainer() {
    WebSocketContainerFactoryBean container = new WebSocketContainerFactoryBean();
    container.setMaxTextMessageBufferSize(16384);
    container.setMaxBinaryMessageBufferSize(8192);
    return container;
}
Run Code Online (Sandbox Code Playgroud)

然后我的URL映射看起来

@Override 
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
    registry.addHandler(coBrowseSockJsCustomerHandler(), "/sockjs/cobrowse/customer/").withSockJS();}
Run Code Online (Sandbox Code Playgroud)

我是否需要在某处设置sockjs这个bean?sockjs怎么知道它必须使用这个工具?

spring websocket sockjs spring-websocket

9
推荐指数
2
解决办法
6922
查看次数

标签 统计

sockjs ×1

spring ×1

spring-websocket ×1

websocket ×1