|
@@ -1,8 +1,10 @@
|
|
|
package com.sxtvs.open.api.review.controller;
|
|
|
|
|
|
import com.sxtvs.open.api.review.service.impl.SSEService;
|
|
|
+import com.sxtvs.open.core.advice.NoAPIResponse;
|
|
|
import com.sxtvs.open.core.auth.LoginRequired;
|
|
|
import jakarta.annotation.Resource;
|
|
|
+import jakarta.servlet.http.HttpServletResponse;
|
|
|
import org.springframework.http.MediaType;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
@@ -19,10 +21,15 @@ public class SseController {
|
|
|
private SSEService sseService;
|
|
|
|
|
|
@GetMapping(path = "/sse", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
|
|
|
- public SseEmitter handleSse(@RequestParam("token") String token) throws InterruptedException {
|
|
|
+ @NoAPIResponse
|
|
|
+ public SseEmitter handleSse(@RequestParam("token") String token/*, HttpServletResponse response*/) {
|
|
|
SseEmitter sseEmitter = new SseEmitter(0L); // 设置超时时间
|
|
|
sseService.monitor(token, sseEmitter);
|
|
|
- Thread.sleep(100);
|
|
|
+// response.setHeader("Content-Type", "text/event-stream");
|
|
|
+// response.setHeader("Cache-Control", "no-cache");
|
|
|
+// response.setHeader("Connection", "keep-alive");
|
|
|
+// response.setHeader("Accept", "text/event-stream");
|
|
|
+// response.setHeader("syj", "---");
|
|
|
return sseEmitter;
|
|
|
}
|
|
|
}
|