Angular-无法加载模块脚本:

时间:2019-09-10 08:30:46

标签: mime-types angular8

我在生产中有angular 8前端应用程序,并且其加载模块脚本失败:服务器以非JavaScript MIME类型“ text / html”响应。根据HTML规范对模块脚本强制执行严格的MIME类型检查。

这个问题只发生在并非总是如此的生产版本中,有时只能复制。

main-es2015.fcc7123d15fd9c113b00.js:1

vendor-es2015.d8d7d81cc2b06ece8c91.js:1

我该如何解决。

2 个答案:

答案 0 :(得分:0)

您正在使用serviceWorker吗? 如果是这样,则必须在内部使用angular.json "serviceWorker": true添加所用的配置。

答案 1 :(得分:0)

我想与我在工作所在的组织中遇到的相同问题分享经验。

我有一个Angular 9应用程序,当我部署到Stage环境时,我的控制台出现三个错误,显示为“由于Mime类型而导致模块未加载”。在所有其他环境下,此方法都可以正常工作,经过大量的努力,发现该网站下的文件无法访问。例如。部署Angular应用程序时,将获得index.html文件和许多其他js文件。该网站存在权限问题。该网站托管在Rackspace中,并且防火墙未配置为可以访问网站正下方的文件。

一旦提供了以下访问权限,该应用便开始运行。

  • /资产*
  • / *。css
  • / *。js
  • / *。ico
  • / *。html

我对您的问题的唯一区别是您提到它有时会起作用。

还有另一篇文章Blocked because of a disallowed MIME type (“text/html”) : Angular 8 deployed on tomcat 9.0.30 fails to serve the assets尝试基于基本引用的解决方案,因为这些js文件未提供/未加载

我希望这可以对某人有所帮助。