如何使用Javascript加载Google静态地图图片

时间:2009-06-10 18:35:42

标签: javascript google-maps

现在我可以使用此网址成功申请Google静态地图图片:

http://maps.google.com/staticmap?center=37.687,-122.407&zoom=8&size=450x300&maptype=terrain&key=[my key here]&sensor=false

然而,第二个我使用JQuery或任何直接的javascript将图像的src设置为上面的url,Google传回错误400:

“您的客户发出了格式错误或非法的请求。”

我读过这通常是因为密钥不正确,但我的密钥显然已被传递。

这就是我动态设置图像的方式:

document.getElementById('my-image-id').src = "http://maps.google.com/staticmap?center=37.687,-122.407&zoom=8&size=450x300&maptype=terrain&key=[my key here]&sensor=false"

我用正确的密钥替换了[我的密钥],但它仍然不起作用。当我通过浏览器请求相同的URL时,没关系。我已经确认正确的推荐人也会被通过。

有什么想法吗?

3 个答案:

答案 0 :(得分:8)

此代码是否适合您(它对我有用 - 请务必插入密钥)?

<html>
<head>
<script language="javascript">
    function swap() {
        document.getElementById('my-image-id').src = "http://maps.google.com/staticmap?center=37.687,-122.407&zoom=8&size=450x300&maptype=terrain&key=&sensor=false"
    }
</script>
</head>
<body>
<img src="http://www.google.com/intl/en_ALL/images/logo.gif" width="450" height="300" onClick="swap();" id="my-image-id" />
</body>
</html>

答案 1 :(得分:1)

这里有一个可能的拼写错误:

&key=[my key here]g

答案 2 :(得分:1)

问题在于钥匙。注册一个新密钥并附加网址。它会工作正常。我甚至遇到了同样的问题。它正在浏览器的地址栏中直接粘贴。但在生产中它没有用。我把新密钥放在生产和浏览器中都很好。