在FF和所有,我的javascript工作良好。但在Chrome中,它会给出这样的信息:

资源解释为脚本,但传输与MIME类型文本/纯。

我已经检查了所有的脚本标签,他们都有MIME类型=“文本/javascript”。它甚至说jquery和jquery ui。Chrome出了什么问题?

问题是什么,解决方法是什么?它是我必须改变浏览器的“选项”,还是来自服务器,或者我必须调整我的代码?


当前回答

这意味着服务器正在发送Javascript HTTP响应

Content-Type: text/plain

您需要配置服务器以发送JavaScript响应

Content-Type: application/javascript

其他回答

在apache的httpd.conf中,只需添加这样一行:

AddType application/x-javascript .js

对我来说,它只发生在一些页面上,因为我使用了window。Location代替$ Location .url(…);这解决了我的问题。花了一段时间才弄明白:)

在我的例子中,服务器发送了正确的内容类型,但内容编码不正确。确保只对gzip压缩的资源设置Content-Encoding: gzip。此外,在我修复了服务器中的头文件(在我的例子中,是谷歌云存储)后,我不得不等待几分钟以正确反映由于缓存造成的更改。

我在使用web框架时遇到了这个问题,并通过将相关的javascript文件移动到指定的(由框架)javascript文件夹中来修复它。

我遇到了这个问题,我找到了解决它的方法。

当样式(CSS)文件的编码与引用.css文件的PHP文件的编码不同时,就会发生这种情况

例如,使用Unix编码的jQuery.js和使用UTF-8编码的index.php会导致这个问题,所以你必须让它们都是UTF-8或任何其他编码,只要它们是相同的。