【问题标题】:Angular 4 throwing error EventSource's response has a MIME type ("text/html") that is not "text/event-stream" after migrating to .NetCore 2.0Angular 4 抛出错误 EventSource 的响应在迁移到 .NetCore 2.0 后具有不是“text/event-stream”的 MIME 类型(“text/html”)
【发布时间】:2018-01-31 04:50:33
【问题描述】:

我有一个基于 Asp .Net Core 的现有 SPA(我使用 Yo generator-aspnetcore-spa 生成模板)。它工作得很好,但是在迁移到 .NetCore 2.0 后它开始抛出错误:

EventSource 的响应有一个 MIME 类型(“text/html”),它不是 “文本/事件流”。中止连接。

据我了解,此问题仅影响更新任何文件后的自动刷新(据我所知,热模块更换)。所有其他的东西都工作正常。

那么,问题是如何修复上面的错误?

【问题讨论】:

    标签: angular asp.net-core asp.net-core-2.0


    【解决方案1】:

    我找到了解决方案,主要是.NetCore路由系统的问题,它正在接管并尝试处理请求,返回text/html,所以它正在发送实际的webpack_hmr热文件。要修复它,您需要在 Startup.cs 文件中编辑 Configure 方法。

    1. 之前:

      // some code
      app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions {
                  HotModuleReplacement = true                    
              });
      //some code
      
    2. 之后:

      // some code
      app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions {
                  HotModuleReplacement = true,
                  HotModuleReplacementEndpoint = "/dist/__webpack_hmr"                   
              });
      // some code
      

    解决方案取自这个thread on GitHub

    【讨论】:

    • @Serg.ID,真是让人头疼。自升级到 2.0 后,HMR 已被破坏
    • 我需要更多地使用端点,但这绝对是问题所在。谢谢!
    【解决方案2】:

    尝试将托管环境从生产环境更改为开发环境

    1. 检查您的 Hosting environment 是否设置为 ProductionDevelopment(Webpack HMR 已针对 Production 禁用)
    2. 将托管环境更改为开发。
      export ASPNETCORE_ENVIRONMENT=development 添加到您的~/.bash_profile~/.zshrc 文件中。
      关注link 以获得更详尽的解释。
      因此,您的输出应该是:

    这个link 解释了如何更深入地更改环境。

    【讨论】:

    • 开发环境存在问题。在迁移到 .net core 2 之前一切正常
    • 我试过你的答案,但没有用。然后我第二点的链接修复了我的错误。问题是我的托管环境。
    • 从这个角度来看你是绝对正确的,HMR 只在 Dev env 中工作。但是,这个问题是关于“EventSource's response has a MIME type ("text/html")”错误
    • 你是对的!我也遇到了同样的错误,但我猜我的问题不同,我能够通过更改 Hosting env 来解决它。
    • @Serg.ID 仍然无法弄清楚这一点。部署后,我们的 env 不是 Dev 那么如何处理这个问题呢?在那里它不会使用任何 HMR。
    猜你喜欢
    • 1970-01-01
    • 2016-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-07
    • 2018-12-13
    • 2018-06-14
    • 1970-01-01
    相关资源
    最近更新 更多