问题标签 [event-stream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-boot - 未找到媒体类型 = 文本/事件流的 SseEmitter MessageBodyWriter
我正在尝试让服务器发送的事件与 JavaScript Web 客户端和 Spring Boot 1.5.7 应用程序一起使用。当客户端最初连接时从 REST 端点返回 SseEmitter 时,服务器日志中出现以下错误:
REST 方法被很好地调用,我创建并保存发射器以供以后使用。当从 REST 方法返回发射器时,会抛出上述异常。
我只有在 Web 客户端(Chrome 和 Firefox)中使用 EventSource 时才得到这个,而不是在使用 curl 时。我什至可以在浏览器中输入 URL 并获得响应,而不会在服务器上出现错误。
我几乎在关注我能找到的每一个例子。
JavaScript:
服务器:
有任何想法吗?
谢谢你。
http - 如何仅通过一个 HTTP 请求从 Event Store 流中获取最后一个事件?
我能找到的所有文档似乎都表明我需要两个 http 请求来执行此操作:一个到流,给我一个到最后一个事件的链接,然后一个跟随那个链接。
这似乎很奇怪,难道没有办法只用一个请求来做到这一点吗?
python - Docker 映像中的 nginx 缓冲烧瓶事件流
我有一个带有 python/flask 的 REST API 后端,并希望在事件流中流式传输响应。一切都在带有 nginx/uwsgi ( https://hub.docker.com/r/tiangolo/uwsgi-nginx-flask/ )的 docker 容器中运行。
API 工作正常,直到涉及事件流。似乎某些东西(可能是 nginx)正在缓冲“收益”,因为在服务器完成计算并将所有内容一起发送之前,任何类型的客户端都没有收到任何内容。
我尝试使用附加配置(nginx_streaming.conf)文件来调整 nginx 设置(根据 docker 映像说明):
码头文件:
但是我不太熟悉 nginx 设置,并且确定我在这里做什么^^这至少不起作用..有什么建议吗?
我的服务器端实现:
node.js - 如何通过 socket.io 将数据流式传输到客户端
我有 socket.io 从服务器向客户端发送一个基本对象。这一点工作正常。
现在想使用事件流(特别是区块链查询的结果)从服务器向客户端发送一个流。我在浏览器控制台中得到了意想不到的结果..
我在客户端控制台中得到的似乎是某种 TCP 套接字功能,
ƒ (){if(!n){n=!0;var r=a(arguments);u("sending ack %j",r),e.packet({type:i.ACK,id:t,data:r})}}
谁能帮助我了解发生了什么以及我做错了什么?
== 编辑更新 ==
正如评论中所建议的,我已经尝试使用 socket.io-stream来增加event-stream。
这次我在浏览器控制台中返回了一个套接字对象,这似乎不是我希望的流数据。
node.js - 超出最大堆栈大小 - 事件流
有这段代码:
问题是当查询返回大量文档时,该函数将失败
这个函数所做的是获取一个过滤器,基于过滤器运行一个 mongodb 查询,并将结果文档写入一个文件,然后进行 ftp-ed。
该功能在next(null, doc);
关于如何改进代码而不必增加调用堆栈大小的任何建议?
domain-driven-design - 事件溯源中是否应该查询最新的事件版本?
我正在为教育目的开发一个简单的基于 DDD + 事件源的应用程序。
为了在存储到事件存储之前设置事件版本,我应该查询事件存储,但我的直觉告诉这是错误的,因为它会导致并发问题。
我错过了什么吗?
angularjs - 如何模拟服务器发送事件 SSE aka EventSource?
在我的 angularjs 应用程序中,我具有以下方式使用 SSE 的功能。代码在第三方库中,
现在我想在我的protractor
代码中模拟这个,我可以用它httpBackend
来模拟请求但是返回适当eventstream
响应和触发事件的正确方法是什么?
php - PHP 服务器发送事件连接不会关闭?
我已经在我的 Web 应用程序上实现了一个带有事件源的服务器发送事件。基本上在javascript中我的代码看起来像:
在 PHP 方面,我有这样的东西:
从在以下位置找到的答案:PHP 事件源不断执行,“文本/事件流”标头应该使连接自动关闭,但在我的情况下它不会..
我确实在 window.onbeforeunload 事件中添加了一个 eventsource.close,但它没有关闭该事件。
如果我查看浏览器的网络部分,我可以看到标题是(在添加最大循环 30 之后): Content-Type: text/event-stream;charset=UTF-8
响应标头:
访问控制允许来源:*
缓存控制:无缓存
连接:保持活动
内容类型:文本/事件流;字符集=UTF-8
服务器:Apache/2.4.18 (Ubuntu)
日期:2018 年 4 月 26 日星期四 20:29:46 GMT
到期:1981 年 11 月 19 日星期四 08:52:00 GMT
请求标头:
连接:保持活动
接受:文本/事件流
缓存控制:无缓存
注意:我确认脚本仍在使用日志运行,并通过始终递增的 bash (ps -ax | grep -c apache2) 检查 apache2 进程。
node.js - 你如何使用 event-stream 来暂停和恢复 Gulp 流?
我正在尝试将 npm 包克隆到客户端位置,因此我创建了多个流来完成此操作并将它们合并以从gulp.task()
. 但是,据我了解,我需要暂停流,以便任务接收正确的退出。
以下代码运行没有错误,但如果我评论该return
行。其中一个包仍然被复制,当我希望没有任何流到达它们的gulp.dest()
. 为什么不是所有的流都暂停了?