Google地图 - 资源解释为脚本,但使用MIME类型image / png进行传输

时间:2014-08-26 07:33:49

标签: javascript google-maps google-chrome google-maps-api-3 mime-types

我做了一些研究,但找不到专门针对Google Maps V3 Javascript API的帖子,所以我发布了一个新问题。如果有更适合这个问题的地方,请告诉我。

我的问题:

我没有触及任何内容,我的网站利用Google Maps V3 Javascript API开始向我提出此错误:

Resource interpreted as Script but transferred with MIME type image/png

Refused to execute script from 'http://mt1.googleapis.com/vt?pb=!1m4!1m3!1i15!2i9148!3i11958!1m4!1m3!1i15!2…2m1!1e47!12m3!1e37!2m1!1ssmartmaps!4e3&callback=_xdc_._63mj9u&token=110320' because its MIME type ('image/png') is not executable, and strict MIME type checking is enabled. 

我开始在Chrome的javascript控制台中完全明白这一点。这可能与过多的Google地图请求有关吗?我在地图页面上做了一些修改并且经常刷新,但从未触及任何处理地图或其图块渲染的工作脚本 - 所以我很困惑。

有没有人遇到过这个问题和/或知道解决方案?

更新 如下面的评论所暗示,这不是一个“可忽略的”问题,因为它影响地图图块的呈现方式。如this post所述,其他人也开始遇到这类问题。这也是一个影响我在其他网站上发起的其他地图的问题(example)。

2 个答案:

答案 0 :(得分:2)

基本上,您可能认为它是一个必须在API中修复的错误,而不是客户端。

你可以尝试和应该做的事情:

在生产中,您应该始终加载API的发行版。

目前您尝试加载的API版本3.9.2已不再可用。

而是加载了实验版本。

目前文档中说3.17是实验性的,3.16是发布版本,但我认为这不是正确的(尚未更新)。

在控制台内运行:

alert(window.google.maps.version) 

...而且您将看到已加载的内容

由于似乎有更新,3.17是发布和3.18实验(我猜新的3.18是问题的来源)

有关控制版本和获取上一个稳定版本的详细信息,请参阅:https://developers.google.com/maps/documentation/javascript/versions

答案 1 :(得分:2)

我在Google地图中打开了一个问题,我得到了答案:

使用htttp协议,此api的地址存在问题。替换为可行的https。

ex:'https://maps.googleapis.com/maps/api/js?v=3'