2012-02-20 2 views
8

Возможно ли сохранить API-интерфейс изображения google в качестве изображения на моем сервере?Как сохранить изображение API карты изображения Google на моем сервере

Фон: Google map image API генерирует изображение желаемого местоположения. Каждый раз, когда я вызываю внешний URL. Можно ли сохранить изображение карты в виде изображения (png, gif) на моем сервере? Это улучшит скорость моей веб-страницы. Я попытался с завитком, но не копировать изображение

Запрашиваемая страница http://maps.googleapis.com/maps/api/staticmap?center=15719+OAKLEAF+RUN+DRIVE%2CLITHIA%2CFL%2C33547%2CUS&zoom=8&size=150x100&markers=color:blue|label:S|11211&sensor=false

+0

Пожалуйста, не забудьте прочитать условия обслуживания, так как то, что вы «Обозначение может хорошо нарушать их. –

+0

@ Марты Марна Да. Мы можем запросить максимум 1000 запросов на одного пользователя. –

+1

. Я больше беспокоюсь о том, чтобы вы сохраняли их на свой сервер. –

ответ

9

вы можете попробовать что-то вроде этого:

<?php 
$image = file_get_contents('http://maps.googleapis.com/maps/api/staticmap?center=15719%20OAKLEAF%20RUN%20DRIVE,LITHIA,FL,33547,US&zoom=8&size=150x100&markers=color%3ablue%7Clabel%3aS%7C11211&sensor=false'); 
$fp = fopen('ae.png', 'w+'); 

fputs($fp, $image); 
fclose($fp); 
unset($image); 
?> 
+0

Является ли этот ответ по-прежнему действительным с текущим API? Я пытаюсь кодировать изображение base64 с помощью API Staticmaps, а file_get_contents () всегда возвращает false. –

0

Проверьте API Карт для мобильных устройств. Там вы получите изображение вместо HTML-карты.

3

вы можете легко прочитать, что URL-адрес с помощью file_get_contents

фрагмент кода для этого будет

$url='http://maps.googleapis.com/maps/api/staticmap?center=15719+OAKLEAF+RUN+DRIVE%2CLITHIA%2CFL%2C33547%2CUS&zoom=8&size=150x100&markers=color:blue|label:S|11211&sensor=false'; 

file_put_contents('filename.png',file_get_contents($url)); 
1

Это действительно легко

просто используйте

if(@copy('http://maps.googleapis.com/maps/api/staticmap?center=15719%20OAKLEAF%20RUN%20DRIVE,LITHIA,FL,33547,US&zoom=8&size=150x100&markers=color%3ablue%7Clabel%3aS%7C11211&sensor=false', '/where-u-want-to-save/your-given-name.png')){ 
echo "image-saved"; 
}else{ 
echo "failed"; } 

изображение всегда возвращает в формате PNG вы можете дать изображению уникальное имя широчайшие значение LNG или с использованием времени PHP функции()

Смежные вопросы