You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring MVC中SseEmitter无法异步发送SSE事件问题求助

Spring MVC中SseEmitter无法异步发送SSE事件问题求助

我最近在开发一个基于Spring MVC的API,想要用SSE实现数据流式传输的功能。之前用Spring WebFlux做SSE的时候一切正常,数据能异步地流式返回,但换成Spring MVC的SseEmitter之后就出问题了——所有数据不是逐个事件发送,而是等到最后一个事件完成后一次性全部返回,完全违背了SSE的设计初衷。

我照着网上的示例写了个简单的测试接口,结果还是不行,代码如下:

@GetMapping(value = "/test", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public SseEmitter testSSe(){
    SseEmitter emitter = new SseEmitter();
    for(int i = 1; i < 5; i++)
    {
        int iInLoop = i;
        try {
            Thread.sleep(iInLoop * 1000);
            emitter.send(iInLoop );
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    emitter.complete();
    return emitter;
}

有没有大佬能帮我看看问题出在哪,怎么才能让SseEmitter正常异步发送SSE事件呢?

备注:内容来源于stack exchange,提问作者Joseph Daniel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 15:13:12