Localhost问题上的Google Maps API

时间:2011-11-22 20:12:11

标签: javascript asp.net-mvc google-maps-api-3

我是使用谷歌地图api的新手,我已经坚持了一段时间了。我四处搜索,但却找不到为什么会发生这种情况。

问题似乎与此请求有关: http://maps.googleapis.com/maps/api/js/AuthenticationService.Authenticate 1shttp%3A %2F%2Flocalhost%2FjQUeryMobile%2FHome%2FContact&安培;回调= XDC ._ g5hc9f&安培;标记= 122839

大胆的部分显然是个问题。此参数似乎没有正确构建。

我对此没有任何控制权,这都是由地图的东西完成的。

这是包含地图脚本的行:

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3&sensor=false&callback=initializeGeoCoder"></script>


    function initializeGeoCoder(){
        alert('initialize');
        geoCoder = new GClientGeocoder();
    }

有趣的是,该警报确实会触发,但之后没有任何反应。

可能有关我的设置的重要细节:

我在Windows 7上本地运行iis。该项目是一个.net 3.5 mvc 2.0项目。使用jquery和jquery mobile。

我在FF,Chrome,safari和IE中尝试过它。

是不是api无法处理在localhost上运行的情况?怎么做任何测试?

编辑:进一步研究这个,我查看了一些样本的请求。 http://code.google.com/apis/maps/documentation/javascript/examples/map-simple.html

它的请求非常相似: http://maps.googleapis.com/maps/api/js/AuthenticationService.Authenticate?1shttp%3A%2F%2Fcode.google.com%2Fapis%2Fmaps%2Fdocumentation%2Fjavascript%2Fexamples%2Fmap-simple.html&callback=xdc._56yxp&token=74698

返回:

_xdc_._56yxp && _xdc_._56yxp( [1,null,0] )

我的回报:

_xdc_._10kda1 && _xdc_._10kda1( [1,null,0] )

我原本以为这是请求网址不好的乱码b / c。但似乎情况可能并非如此。

更多信息:

在IE中运行时,脚本调试正在运行:此行失败:

编辑:更多信息:

在IE中运行时,脚本调试。我在这一行上收到错误:

geoCoder = new GClientGeocoder();

错误是:

  

'GClientGeocoder'未定义

所以:来自地图api的东西并没有像往常一样被加载。

1 个答案:

答案 0 :(得分:3)

您需要发布更多代码。发布包含地图的div。

GClientGeocoder函数不会在您的页面中插入地图。事实上,它做了一些完全不同的事情(输入一个地址,它将返回lat / long)。

使用本教程从简单的Google地图开始。

http://code.google.com/apis/maps/documentation/javascript/tutorial.html

编辑:如果您尝试使用地理编码,则Google Maps API的V3会命名函数geocode()而不是GClientGeocoder()。查看此演示的源代码:http://code.google.com/apis/maps/documentation/javascript/examples/geocoding-simple.html