【发布时间】:2021-12-31 23:18:10
【问题描述】:
我有一个 Spring Boot 服务器,我希望能够与无法或不愿处理 permessage-deflate 压缩消息的 websocket 客户端通信。我从这两个关于该主题的类似问题(链接如下)中知道,我可以添加 VM 参数 -Dorg.apache.tomcat.websocket.DISABLE_BUILTIN_EXTENSIONS=true 来禁用 Tomcat 的默认 deflate 压缩。
- Tomcat JSR356 Websocket - disable permessage-deflate compression
- Spring disable websocket compression -> Sec-WebSocket-Extensions: permessage-deflate
但是,我计划制作一个可以分发的程序,以便其他人可以运行它,并且不得不强迫人们记住始终包含特定的 VM 参数只是为了更改设置似乎很粗糙。
是否有一些替代方法可以禁用 Tomcat 的 websocket 压缩,它不需要用户在运行时指定 VM 参数,可能使用 Spring 的 Java 配置或自定义 websocket 握手拦截器?
【问题讨论】:
标签: java spring-boot tomcat websocket