我无法理解 HTML5s Server-sent-events 是否真的适合 ReST 架构。我了解并非 HTML5/HTTP 的所有方面都需要适应 ReST 架构。但我想从专家那里知道,HTTP 的哪一半是 SSE(ReSTful 的一半或另一半!)。
一种观点可能是它是 ReSTful,因为有一个从客户端到服务器的“初始”HTTP GET 请求,剩下的可以看作只是不同内容类型的部分内容响应(“text/event-溪流”)
发送的请求不知道会有多少响应作为 response(events) 来?那是休息吗?
问题的动机:我们正在开发应用程序的服务器端,我们希望同时支持 ReST 客户端(通常)和浏览器(特别是)。虽然 SSE 适用于大多数 HTML5 浏览器客户端,但我们不确定 SSE 是否适合纯 ReST 客户端的支持。因此问题。
编辑 1:正在阅读 Roy Fielding 的旧文章,他在其中说:“换句话说,单个用户请求会导致潜在的大量服务器义务。因此,善意的用户可能会对发布者或经纪人产生不成比例的负载,即分发通知。在 Internet 上,我们没有为仁慈的用户设计的奢侈,因此在 HTTP 系统中,我们将此类请求称为拒绝服务攻击......这正是没有标准机制的原因对于 HTTP 中的通知“
这是否意味着 SSE 不是 ReSTful ?
Edit2:正在通过 Twitter 的 REST API。虽然 REST 清教徒可能会争论他们的 REST API 是否真的/完全是 REST,但Streaming 和 REST 之间的差异部分的标题似乎表明 Streaming(甚至 SSE)不能被视为 ReSTful !?有人反对吗?