What#39;s the difference between quot;text/event-streamquot; and quot;application/stream+jsonquot;(文本/事件流与应用程序/流之间的区别是什么)
本文介绍了文本/事件流与应用程序/流之间的区别是什么的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
@GetMapping(path = "/cars", produces = "text/event-stream")
public Flux<Car> getCarStream() {
System.out.println("application/stream+json");
return this.repository.findCarsBy().log();
}
上面的代码和下面的代码有什么区别:
@GetMapping(path = "/cars", produces = "application/stream+json")
public Flux<Car> getCarStream() {
System.out.println("application/stream+json");
return this.repository.findCarsBy().log();
}
到目前为止,我发现了相互矛盾的信息:一些人说它们都是指服务器发送的事件,另一些人说它们是有区别的。
推荐答案
tl;dr:dzone文章是错的,罗森的话是对的。
text/event-stream
是服务器发送事件(SSE)的官方媒体类型;它将为数据位添加data:
前缀,您也可以选择前缀来更改该数据段对客户端的含义。此媒体类型适用于浏览器,因为它们使用EventSource
JavaScript API支持该类型。
application/stream+json
用于服务器到服务器/http客户端(任何不是浏览器的内容)的通信。它不会为数据添加前缀,只会使用CRLF来拆分数据片段。请注意,Spring团队正在重新考虑该媒体类型,因为SPR-16742(请不要犹豫在这里发表评论!)。
这篇关于文本/事件流与应用程序/流之间的区别是什么的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:文本/事件流与应用程序/流之间的区别是什么
基础教程推荐
猜你喜欢
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01