Как загрузить Google Static Maps Image с помощью Javascript - PullRequest
3 голосов
/ 10 июня 2009

Сейчас я могу использовать этот URL для успешного запроса изображения Google Static Maps:

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 ]

8 голосов
/ 10 июня 2009

Этот код работает для вас (он работает для меня - обязательно введите ваш ключ)?

<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 голос
/ 01 октября 2009

Проблема с ключом. Зарегистрируйтесь для получения нового ключа и добавьте URL-адрес. Это будет работать нормально. Я даже столкнулся с той же проблемой. Работал с прямой вставкой в ​​адресную строку браузера. Но на производстве это не работало. Я поставил новый ключ, и он отлично работал как на производстве, так и в браузере.

1 голос
/ 10 июня 2009

У вас есть возможная опечатка с g на конце здесь:

&key=[my key here]g
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...