EventSource 的响应具有不是“text/event-stream”的 MIME 类型(“text/plain”)

Posted

技术标签:

【中文标题】EventSource 的响应具有不是“text/event-stream”的 MIME 类型(“text/plain”)【英文标题】:EventSource's response has a MIME type ("text/plain") that is not "text/event-stream" 【发布时间】:2016-08-30 10:29:45 【问题描述】:

。中止连接。

为什么我在从 javascript 向 servlet 发送请求时收到此错误?

【问题讨论】:

你用的是webpack的热加载吗?如果在热加载器可以使用它之前处理路由,那么这就是热加载器抱怨的方式。此外,如果您已将热加载程序加载到生产环境中,也会出现此错误。 【参考方案1】:

发送前需要设置消息头:

  response.writeHead(200, 
    'Content-Type': 'text/event-stream',
    'Cache-Control': 'no-cache',
    'Connection': 'keep-alive'
  );

您可以关注这篇文章以获取更多信息: https://www.html5rocks.com/en/tutorials/eventsource/basics/

【讨论】:

该网址帮助了我。谢谢!

以上是关于EventSource 的响应具有不是“text/event-stream”的 MIME 类型(“text/plain”)的主要内容,如果未能解决你的问题,请参考以下文章

EventSource / 服务器通过 Nginx 发送的事件

EventSource 在第一条消息后断开连接

Service Worker 是不是会不断地从服务器请求、响应?

JavaScript EventSource SSE 未在浏览器中触发

Rails 3 原型渲染:更新响应具有 text/html 内容类型

服务器推送的实现—基于EventSource