首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"text/event-stream“和"application/stream+json”有什么区别?

"text/event-stream“和"application/stream+json”有什么区别?
EN

Stack Overflow用户
提问于 2018-08-30 21:55:59
回答 1查看 13.8K关注 0票数 14
代码语言:javascript
复制
@GetMapping(path = "/cars", produces = "text/event-stream")
public Flux<Car> getCarStream() {
    System.out.println("application/stream+json");
    return this.repository.findCarsBy().log();
}

上面的代码和下面的代码有什么区别:

代码语言:javascript
复制
@GetMapping(path = "/cars", produces = "application/stream+json")
public Flux<Car> getCarStream() {
    System.out.println("application/stream+json");
    return this.repository.findCarsBy().log();
}

到目前为止,我发现了相互矛盾的信息:一些人说它们都是指服务器发送的事件,而另一些人说它们是有区别的。

EN

回答 1

Stack Overflow用户

发布于 2018-08-30 22:51:15

TL;DR: dzone的文章是错的,罗森的话是对的。

text/event-stream是服务器发送事件(SSE)的官方媒体类型;它将为数据位添加data:前缀,您还可以选择自己的前缀来为客户端更改该数据段的含义。此媒体类型适用于浏览器,因为它们支持使用EventSource JavaScript应用编程接口。

application/stream+json用于服务器到服务器/http客户端(任何不是浏览器的东西)的通信。它不会为数据添加前缀,而只是使用CRLF来拆分数据片段。请注意,Spring团队正在重新考虑这种媒体类型,因为SPR-16742 (请毫不犹豫地在这里发表评论!)

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52098863

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档