【问题标题】:python 2 web server local host error. The server responded with a non-JavaScript MIME type of "text/plain"python 2 web 服务器本地主机错误。服务器以“text/plain”的非 JavaScript MIME 类型响应
【发布时间】:2019-11-18 07:00:27
【问题描述】:

(第一次) 我使用 python -m SimpleHTTPServer 8000 使用 python 2.7.15 为我的简单 JavaScript 游戏(仍在学习)生成 Web 服务器,但它似乎有一些错误,这使得我的 HTML 文件的画布不会显示。

JavaScript 在我的 GitHub 页面中运行良好,但不会显示在本地 Web 服务器中。 https://jcloh98.github.io/jsgame/simplegame2.html

所有代码与网站完全相同。这就是我使用的所有代码。

这是控制台日志中显示的错误。

加载模块脚本失败:服务器以“text/plain”的非 JavaScript MIME 类型响应。根据 HTML 规范对模块脚本强制执行严格的 MIME 类型检查。

https://jcloh98.github.io/jsgame/simplegame2.html

预计会显示黑色画布,画布底部带有水桨,如https://jcloh98.github.io/jsgame/simplegame2.html

【问题讨论】:

  • 这意味着你的 python 网络服务器正在发送“text/plain”作为 javascript 文件的内容类型,而它应该是“application/javascript”。
  • 您好,请问我该如何从“text/plain”更改为“application/javascript”?
  • 看看the docs。如需定制,请参阅here
  • 您好,非常感谢,问题已解决。

标签: python content-type simplehttpserver


【解决方案1】:

不使用python -m SimpleHTTPServer 8000,而是创建一个名为“localhost.py”的 .py 文件并在网页的同一目录中运行该 .py 文件。

localhost.py 强制扩展名为“.js”的文件的内容类型为“application/javascript”。

localhost.py

#Use to create local host
import SimpleHTTPServer
import SocketServer

PORT = 8000

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
Handler.extensions_map.update({
    ".js": "application/javascript",
});

httpd = SocketServer.TCPServer(("", PORT), Handler)

print "Serving at port", PORT
print(Handler.extensions_map[".js"])
httpd.serve_forever()

感谢 Bergi 帮我解决了这个问题。

【讨论】:

  • 谢谢。这为我解决了。
猜你喜欢
  • 2020-05-11
  • 2019-11-08
  • 2021-01-26
  • 2018-05-04
  • 2021-03-07
  • 2020-05-18
  • 2021-04-11
  • 2023-04-01
相关资源
最近更新 更多