jHipster 之 webflux-前端用EventSource处理sse变成了批量处理而非实时处理

现象:

javascript 复制代码
const eventSource = new EventSource(API_URL5);
    eventSource.onmessage = streamEvent => {
      console.log('a message is come in--------->');
      const content = streamEvent.data;
      console.log('Received content: ' + content);
    };

前端用EventSource 处理webflux的sse,虽然后端每秒钟会生成一个字符串,但是前端并不是每秒中在控制台打印出后台输出的数据,而是等后台所有的输出完了,一起打印到控制台。这就改变了eventsource的初衷了。

貌似有一种缓冲机制,后经调查和后端没有关系,是jHipster开发环境中的前端代理服务器导致。

可能的原因:

  1. webpack devserver
  2. BrowserSyncPlugin
    他们可能使后端的返回加入了Content-Encoding: gzip 这个响应头,这样eventSource的处理收到了干扰。

因为是开发环境特有的问题,生产环境没有,所以暂时记录一下,以后有时间可以研究一下。重要的一点是,问题的原因是前端,jhipster后端没有问题。

相关推荐
用户47949283569153 分钟前
我只是给Typescript提个 typo PR,为什么还要签协议?
前端·后端·开源
程序员爱钓鱼24 分钟前
Next.js SSR 项目生产部署全攻略
前端·next.js·trae
程序员爱钓鱼25 分钟前
使用Git 实现Hugo热更新部署方案(零停机、自动上线)
前端·next.js·trae
颜颜yan_41 分钟前
DevUI + Vue 3 入门实战教程:从零构建AI对话应用
前端·vue.js·人工智能
国服第二切图仔2 小时前
DevUI Design中后台产品开源前端解决方案之Carousel 走马灯组件使用指南
前端·开源
无限大62 小时前
为什么浏览器能看懂网页代码?——从HTML到渲染引擎的奇幻之旅
前端
福尔摩斯张2 小时前
Linux信号捕捉特性详解:从基础到高级实践(超详细)
linux·运维·服务器·c语言·前端·驱动开发·microsoft
2401_860319522 小时前
DevUI组件库实战:从入门到企业级应用的深度探索 ,如何快速安装DevUI
前端·前端框架
cc蒲公英2 小时前
javascript有哪些内置对象
java·前端·javascript
zhangwenwu的前端小站2 小时前
vue 对接 Dify 官方 SSE 流式响应
前端·javascript·vue.js