Chrome说“资源被解释为脚本,但以MIME类型的text / plain传输。”,这有什么用?

邮差的信 提交于 2020-03-19 18:24:19

3 月,跳不动了?>>>

在FF和所有语言中,我的JavaScript正常运行。 但是在Chrome中,它会显示以下消息:

资源被解释为脚本,但使用MIME类型的text / plain进行传输。

我已经检查了所有脚本标签,它们都具有MIME type="text/javascript" 。 甚至对jquery和jquery ui都这样说。 Chrome怎么了?

有什么问题和解决方法? 是我必须在浏览器的“选项”中进行更改,还是在服务器中进行更改,还是必须对代码进行调整?


#1楼

检查您的js文件在服务器上是否实际存在。 我遇到了这个问题,发现js文件尚未上传到服务器,而服务器实际上返回的是html页面-这是服务器上配置的默认文档(例如default.html)


#2楼

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


#3楼

如果要使用php文件生成JavaScript,请将其添加为文件的开头:

<?php Header("Content-Type: application/x-javascript; charset=UTF-8"); ?>

#4楼

发生这种情况的常见现象是,如果您只是忘记在脚本调用中包括该type 。 您必须显式设置它,按照W3的 要求

type (内容类型):此属性指定元素内容的脚本语言,并覆盖默认脚本语言。 脚本语言被指定为内容类型(例如"text/javascript" )。 作者必须为此属性提供一个值。 此属性没有默认值

似乎浏览器的默认值仍为plain/text

例:

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false&language=en"></script>

您也可以在Apache配置中为该文件扩展名设置默认值:

<IfModule mod_mime.c>
    AddType text/javascript .js
</IfModule>

#5楼

如果其IIS确保在您的common HTTP Features您已打开“ Static Content

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!