0

Мне нужно получить статическое изображение карты с большим количеством полигонов на нем.Google Maps Static API net :: ERR_CONNECTION_CLOSED

Ссылка генерируется из массива, которая может содержать более двух тысяч координат.

link += "&path=weight:5|fillcolor:"+color+"|"+params[i].cords[0].lat+","+params[i].cords[0].lng+"|"+params[i].cords[1].lat+","+params[i].cords[1].lng+"|"+params[i].cords[2].lat+","+params[i].cords[2].lng+"|"+params[i].cords[3].lat+","+params[i].cords[3].lng; 

После этого, я предполагаю, что этот URL для элемента 'IMG':

img.src = "https://maps.googleapis.com/maps/api/staticmap?format=jpg&zoom=2&size=400x400"+ generateParamsForLink(params) +"&key="mykey" 

Когда посылается запрос, я получаю сообщение об ошибке - низшая :: ERR_CONNECTION_CLOSED

мой короткий url =)

Буду рад любому совету.

ответ

0

У вас на вашем URL-адресе более 16 тыс. Символов. Я боюсь, что этот API не будет работать так, как вы хотите его

Вот ссылка на раздел документации API, где указанный предел будет 2048 символов: https://developers.google.com/maps/documentation/static-maps/intro#url-size-restriction

Вы также должны URL закодировать так img.src = "https://maps.googleapis.com/maps/api/staticmap?format=jpg&zoom=2&size=400x400"+ encodeURIComponent(generateParamsForLink(params)) +"&key="mykey"

У вас также есть дополнительный амперсанд перед ключом в сгенерированной версии, я предполагаю, что это потому, что последний элемент в параметрах пуст.

Надеюсь, это поможет, извините, у меня нет новостей. Я бы предложил использовать встроенную карту google, но отключив взаимодействие.

Если вам действительно нужно изображение, вот сообщение, в котором есть решение, я его не тестировал и не могу ручаться за то, насколько хорошо он работает. Если это сработает для вас, пожалуйста, дайте мне знать!

Google Maps image?

+0

Спасибо, я, видимо, пропустил информацию об ограничениях размера. Я использовал статические карты для создания pdf-файла. Возможно, вы знаете, как я могу обойтись без них? –

+0

@AntonGorshenin Я только что обновил ответ, пожалуйста, дайте мне знать, если это сработает для вас. В прошлом я столкнулся с аналогичной проблемой, создав карту для вставки в PDF-файл для печати, который не был достаточно высоким для разрешения из-за ограничений по размеру. В конечном итоге мы решили отказаться от карты, но тогда я не смог найти это решение. –

+0

Я также не мог найти решение для построения больших данных через Static API. В то же время я также попытался использовать OSM + mapbox + leaflet_image. Это решение позволяет разместить строку из 4096 символов. Но этого, к сожалению, недостаточно для моих целей ( Теперь я пытаюсь использовать карты высоких карт. –