谷歌地图不再工作了

时间:2009-03-19 00:07:22

标签: php google-maps

2天前,我正在开发一个涉及谷歌地图的项目。该网站显示网页上的地图就好了。

现在,我回到我的工作站,一切都没有改变,期待谷歌地图不再出现这一事实。代码是完全相同的,自从我离开后没有人碰过我的机器,我检查了HTML,一切都很完美,但仍然没有工作...... Javascript控制台没有给出任何错误,代码与我每次调用它时所做的备份相同。 2天前它正在运行,今天它没有。

我甚至复制了源代码,将其放入html文件并尝试了,但结果相同。我在这里不知所措。这是我的代码:

<script type="text/javascript">
      //<![CDATA[
      var map;
      var directionsPanel;
      var directions;

      function initialize() {
        if (GBrowserIsCompatible()) {
         map = new GMap2(document.getElementById("map"));
         map.addControl(new GLargeMapControl());
         map.addControl(new GScaleControl());
         map.addControl(new GMapTypeControl());

         //the route description
         directionsPanel = document.getElementById("route");
         directions = new GDirections(map, directionsPanel);
         directions.load({COMMAND});
        }
      }
      //]]>
    </script>

{COMMAND}是PHP模板将解析的东西,我已经检查过,格式是100%正确的,就像我已经说过的那样,代码现在与备份完全相同,如果它可以回复,那么它现在应该工作。

谷歌是否在一夜之间更新了他们的API,并且我在这里使用的功能被弃用了吗?我不知道这里发生了什么......

3 个答案:

答案 0 :(得分:1)

我建议使用某种HTTP嗅探代理,例如Charles(花钱,免费试用)。我相信Firefox可能会有类似的应用程序,但我喜欢Charles。它显示了浏览器发出的每个请求,以及从服务器返回的响应。然后你可以浏览它,看看是否有任何看起来或有趣,也许让你更接近解决问题。

答案 1 :(得分:1)

Fiddler是一个很棒的HTTP代理工具,它是免费的。它应该可以帮助您确定问题。

http://www.fiddler2.com/fiddler2/

您可能需要考虑锁定您的代码以使用特定版本的google maps api(例如http://maps.google.com/maps?file=api&v=2.106&...。),以避免任何更新map API可能会破坏您的代码的问题,如果它是关键任务的话。

答案 2 :(得分:1)

好的,你没有发布所有代码,所以我不得不做一些假设。

我认为您在加载页面时看到的是一个带有Google徽标的灰色框,缩放控件和地图类型选择器,或者是一个白色的页面,顶部是Google徽标。

如果您看到带有截止Google徽标的大部分白页,请确保指定应包含地图的DIV的大小。

如果您看到的灰色框仅包含控件(我的猜测),则必须在创建地图时指定中心点。像这样:

if (GBrowserIsCompatible()) {
     map = new GMap2(document.getElementById("map"));
     map.setCenter(new GLatLng(LAT,LONG), ZOOM);
     ...

我认为这样可以解决您的问题。我不知道它将如何工作一分钟而不是下一个,必须改变的一些,API没有(谢天谢地)。此错误不会在Javascript错误控制台中放置任何内容。我希望这有帮助!!!