gpt4 book ai didi

java - 将事件源连接到创建并返回 SSEEmitter 的 Java 函数时如何防止 "net::ERR_SPDY_PROTOCOL_ERROR 200"?

转载 作者:行者123 更新时间:2023-11-30 05:50:20 25 4
gpt4 key购买 nike

我正在 Javascript 中使用 EventSource 连接到 Java Spring Boot 端点。

当我将应用程序连接到本地主机 java 服务器时,效果很好,但在连接到我的开发服务器时,我每 33 秒左右就会收到一个 net::ERR_SPDY_PROTOCOL_ERROR 200 消息。

我有最新版本的 Chrome(v71)。

我做错了什么?

这是我的 Java Spring Boot 服务器中的函数:

@CrossOrigin
@RequestMapping(path = {"/sse"})
public SseEmitter handleSse(@RequestParam String callId) {
SseEmitter emitter = new SseEmitter(7200000L);
this.emitters.put(callId, emitter);
emitter.onCompletion(() -> this.emitters.remove(callId));
emitter.onTimeout(() -> this.emitters.remove(callId));
return emitter;
}

最佳答案

事实证明,问题是服务器请求超时。我们的服务器对请求发送响应的时间限制为 30 秒。但事件源请求需要保持更长时间。

更改服务器超时限制解决了该问题。

关于java - 将事件源连接到创建并返回 SSEEmitter 的 Java 函数时如何防止 "net::ERR_SPDY_PROTOCOL_ERROR 200"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54020969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com