Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot WebSocket握手时出错:不正确';Sec WebSocket接受';标题值_Spring Boot_Spring Security_Stompjs - Fatal编程技术网

Spring boot WebSocket握手时出错:不正确';Sec WebSocket接受';标题值

Spring boot WebSocket握手时出错:不正确';Sec WebSocket接受';标题值,spring-boot,spring-security,stompjs,Spring Boot,Spring Security,Stompjs,我有一个SpringBootWebSocket连接,它位于SpringSecurityKerberos后面,用于实现SSO。这可以按预期工作,但如果我重新启动服务器,我会看到客户端无法重新连接,在WebSocket握手过程中出现错误错误:错误的“Sec WebSocket Accept”标题值 我正在使用4.0.8并设置stompClient.relconnection\u delay=5000 有什么办法解决这个问题吗?我担心在负载平衡器后面运行此操作会导致此错误一直发生 这是基于+sprin

我有一个SpringBootWebSocket连接,它位于SpringSecurityKerberos后面,用于实现SSO。这可以按预期工作,但如果我重新启动服务器,我会看到客户端无法重新连接,在WebSocket握手过程中出现错误
错误:错误的“Sec WebSocket Accept”标题值

我正在使用4.0.8并设置
stompClient.relconnection\u delay=5000

有什么办法解决这个问题吗?我担心在负载平衡器后面运行此操作会导致此错误一直发生


这是基于+

spring security web
RequestCacheAwareFilter
提取缓存请求,导致实际的秒WebSocket键头值被替换为无效值

事件的顺序是,每次客户端尝试重新连接时,客户端都会发出两个websocket请求,第一个请求会被WWW Authenticate:Govertiate头拒绝,第二个包含Authorization头的请求会有不同的Sec websocket Key

我可以通过完全禁用缓存来解决这个问题,例如在
WebSecurityConfigurerAdapter

@Override
protected void configure(final HttpSecurity http) throws Exception {
    http.requestCache().requestCache(new NullRequestCache())
}

第二个链接断开?修复了链接。没有答案,但我有一个类似的问题,当我完全删除重新连接尝试时,这个问题似乎消失了。这个问题消失了,因为stompjs不尝试重新连接,所以不使用过时的头。。。你是建议手动重新连接吗?只是建议这是开始调查的地方。。。