Как получить статический URL-адрес изображения карты с помощью API статических карт Google? - PullRequest
2 голосов
/ 06 января 2011

Я создаю веб-приложение (все еще в «бета-версии»), которое использует API Flickr для получения информации для фотографий определенного пользователя Flickr и генерирует код IPB для публикации любого из его / ее изображений.

В то время как Flickr теперь предоставляет вам код IPB для отображения изображения и ссылки на сайт с фотографиями непосредственно на своем сайте, мое приложение также имеет возможность встраивать заголовок, описание, выбирать данные EXIF, информацию о местоположении и т. Д. Всообщение для форума IPB.

Недавно я добавил возможность интегрировать изображение Google Maps с данными геолокации фотографии в сообщение с помощью API статических карт Google.

проблема в том, что URL изображения, который у меня есть, имеет следующую форму (включая теги IPB [IMG]):

[IMG]http://maps.google.com/maps/api/staticmap?zoom=16&size=600x600&maptype=hybrid&markers=19.387687,-99.251732&sensor=false[/IMG]

Который показывает этот пример изображения (на практике размер изображения выбирается пользователем):

alt text

Тем не менее, некоторые форумы IPB, похоже, не поддерживают URL-адреса динамических изображений, из-за которых я получаю искаженное изображение. Я хотел бы заменить

[IMG]http://maps.google.com/maps/api/staticmap?zoom=16&size=600x600&maptype=hybrid&markers=19.387687,-99.251732&sensor=false[/IMG]

на Something like

[IMG]http://maps.google.com/maps/api/staticmap/map0000001.png[/IMG]

, который должен поддерживаться всеми форумами IPB.Заранее благодарим за помощь.

Если вам интересно, самую последнюю «выпущенную» версию моего Web-приложения можно найти здесь: http://flickr.argote.mx/ (изменения, о которых я здесь упоминаю,все еще на локальном сервере разработки).

Ответы [ 3 ]

4 голосов
/ 06 января 2011

Насколько я вижу, существует два типа решений:

  1. Вы создаете прокси-сервер для загрузки изображений из Google и предоставления его по приятным URL-адресам клиентам.Недостатком является то, что вам придется обрабатывать большой трафик через ваши серверы (я мало знаю о вашем проекте, вам нужно определиться с производительностью)

  2. Вы создаете специальный BBCODE дляобрабатывать ваши URL-адреса, и вы можете использовать это на любых форумах IPB

+ 1: вы можете создать серверный скрипт с хорошими URL-адресами для перенаправления на URL-адреса Google, но проблема в том, что вы никогда не знаете, какразные браузеры справятся с этим.Я полагаю, что они обычно не следуют URL-адресам для изображений внутри страниц.

+ 2: попросите Google поддержать красивые URL-адреса;)

Надеюсь, что это поможет.

1 голос
/ 01 апреля 2011

Вы должны иметь возможность использовать службу сокращения URL, если служба поддерживает простые перенаправления 301 к ресурсам изображений. Вы должны попробовать, какие из них.

Например, bit.ly имеет REST API. Он позволяет вам делать подобные вызовы из PHP:

http://api.bitly.com/v3/shorten?login=abc&apiKey=123&longUrl={myurl}&format=json 

возвращает битовый URL, который вы можете использовать в BBCode.

Редактировать: Согласно этот JSFiddle , этот метод работает, по крайней мере, в Chrome и IE8. Это все еще нуждается в скрупулезном тестировании через браузеры.

1 голос
/ 25 марта 2011

Поскольку оба предложения Aston исключены, может быть, вы можете установить простой скрипт, который перенаправляет запрос к изображениям Google Maps (вместо прокси)?

Таким образом, вы можете получить что-то вроде http://my-simple-script.tld/lat,lng сделать этот скрипт перенаправить на правильный URL статического изображения Google Maps.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...