我正在index.html
中实例化一个模块:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hello Module</title>
</head>
<body>
<script type="module" src="./index.js"></script>
</body>
</html>
index.js
为空。
当我通过py -3 -m http.server
(Python 3.8.5)提供此服务时,出现Chrome错误:
Failed to load module script: The server responded with a non-JavaScript MIME type of "text/plain". Strict MIME type checking is enforced for module scripts per HTML spec.
我已经阅读了此错误的含义。我不知道如何配置http.server,因为在此之前它对我来说是一个黑匣子。我是否超出了Python的默认(?)服务器的作用?
答案 0 :(得分:1)
JavaScript应该与内容类型text/javascript
一起使用。
The default http.server.SimpleHTTPRequestHandler
handler可能没有(因为可以从Windows注册表中读取映射)具有.js
扩展名到文件类型的映射,或者可能是错误的(从{{1}中可以看出) }。
您需要编写自己的简短脚本来修补text/plain
扩展名,并使用它代替.js
,例如:
python -m http.server