资源解释为图像,但传输为文本/html,而与谷歌地图工作



一个有谷歌地图的新手,我最近才开始阅读。

在其中一个项目中,我必须在地图上画出几个点。

我从谷歌的地图API主页上挑选了一个演示/样本,并开始根据我的需求进行调整。一切顺利。

但是,在某个时间点,我决定插入一个按钮,需要单击该按钮才能显示地图,否则默认情况下不显示地图。

仍然,页面加载没有错误,然而,只要我点击按钮,我得到这个消息"资源解释为图像,但传输为文本/html"

试着找出我是否在某个地方显式设置内容类型,但没有,找不到任何内容。

有人看到了吗?

如果此错误与包含"gen204"的URL相关,则忽略它。这是谷歌地图在某些浏览器上的一个已知问题,但完全无害。访问您站点的访问者不应该受到影响,除非他们打开开发控制台,然后他们将看到的只是一个日志。

这些烦人的警告使你的控制台(和我的)混乱:

  • 无害:它们与性能日志有关,而不是映射API功能。
  • 不是你的错:他们是谷歌的错。(不过目前还不完全清楚是谷歌地图还是谷歌Chrome应该如此负责解决问题。)

根据谷歌地图API论坛的这篇文章(强调添加):

这是一个日志信标。它记录了加载javascript和tile的时间等等......服务器响应HTTP 204,其中是一个空响应,不应该要求MIME类型

所以,问题不在于你如何使用谷歌地图,而在于你的浏览器如何(错误地)处理来自地图性能日志代码的HTTP 204响应。

有WebKit和Chrome针对此问题提交的bug,但它们似乎已经休眠。

我最近遇到了同样的问题时,滚动地图-当我滚动没有新的地图瓷砖出现,我看到'资源解释为图像,但转移为文本/html'在控制台。经过调查,我的地图生成代码(mapappable for silverstripe的一个分支)生成了一个带有空图标文件的标记。当我修复这个问题时,地图又开始正常工作了。

我还为页面添加了第二个地图用于测试目的,这也显示了相同的中断,直到我修复了上面的图标。

最新更新