如何解决Flask:无法加载模块脚本:服务器以非JavaScript MIME类型“ text / html”响应
- 服务器:Python / Flask
- 操作系统:Ubuntu 18.04
- 香草JS
<script
type="module"
src="{{ url_for('static',filename='js/app.js') }}"
></script
我在html正文的底部包含了这个脚本标签。由于某些原因,当我用flask run在本地运行服务器时,在浏览器控制台中出现以下错误消息:
Failed to load module script: The server responded with a non-JavaScript MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.
为什么加载错误的MIME类型。我什至不确定是否还有更多相关的细节。我将尽我所能,尽力填补空白。
解决方法
我认为添加crossorigin = "anonymous"
将解决此问题。
我读到“与经典脚本不同,模块脚本需要使用CORS协议进行跨域获取。”
<script
type="module"
src="{{ url_for('static',filename='js/app.js') }}"
crossorigin="anonymous"
></script>
,
我找到了解决方案。在Flask中,如果您这样导入文件
import SomeClass from './utils'
然后将其标题中的内容类型设置为“ html / text”,它将出错。要解决此导入问题,请按以下步骤操作:
import SomeClass from './utils.js'
它将正确设置内容类型标题
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。