Проект 1: Веб-сервис «Поиск магазинов» с поиском местоположения + автозаполнением
Приложение: Показать все филиалы/представительства на карте, быстрый поиск ближайших адресов/местоположений.
API: Maps JavaScript API + Места (автозаполнение/подробности). Google для разработчиков
Простой скелет (HTML + JS)
Важный момент: Токен сеанса В Autocomplete корректно группируются поисковые запросы в сеанс и биллинг. При использовании готового виджета управление сеансами происходит автоматически; при использовании необработанного сервиса необходимо
AutocompleteSessionTokenСборка (как указано выше). Google для разработчиков+2Google для разработчиков+2Если вы используете облачный стиль,
mapIdУстановите его в соответствии с идентификатором вашей карты. Google для разработчиков+1Ограничить ключ. (HTTP-рефереры + ограничение API для Places/Maps JS).
Проект 2: «Многоостановочный маршрут с оптимизированным порядком остановок»
Приложение: Легкая курьерская доставка/логистика, маркетинговые продажи, быстрая маршрутизация с учетом оптимального порядка остановок.
API: API маршрутов (computeRoutes С optimizeWaypointOrder). Google для разработчиков+1
Пример запроса (cURL – REST)
curl -X POST "https://routes.googleapis.com/directions/v2:computeRoutes" \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: $API_KEY" \
-H "X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex,routes.distanceMeters,routes.duration" \
-d '{
"origin": {"address": "Tehran"},
"destination": {"address": "Tehran"},
"travelMode": "DRIVE",
"optimizeWaypointOrder": true,
"intermediates": [
{"address": "Karaj"},
{"address": "Qom"},
{"address": "Varamin"},
{"address": "Ekbatan, Tehran"}
]
}'
Ответ включает в себя
routes.optimizedIntermediateWaypointIndexчто дает оптимальный порядок промежуточных остановок. Google для разработчиковДля матрицы времени/расстояния с несколькими пунктами отправления и назначения вы также можете использовать
computeRouteMatrixИспользование (в том же наборе API маршрутов) Google для разработчиковСнова Ограничьте ключ IP-адресом сервера. Если запрос сделан из бэкэнда. Google для разработчиков
Проект 3: «Проверка адреса на лицевой и оборотной стороне заказа»
Приложение: Оформление заказов в интернет-магазине, предотвращение ошибок при возврате/доставке посылок.
API: API проверки адресов. Google для разработчиков+1
Простой пример (cURL – REST)
curl -X POST "https://addressvalidation.googleapis.com/v1:validateAddress?key=$API_KEY" \
-H "Content-Type: application/json" \
-d '{
"address": { "regionCode": "IR", "locality": "Tehran", "addressLines": ["Valiasr St, No. 123"] }
}'
Результат включает качество/стандартизацию компонентов адреса и наилучший геокод; вы можете предложить пользователю улучшения. Google для разработчиков
Пример бэкенда Python (официальный клиент)
from google.maps import addressvalidation_v1 as av
client = av.AddressValidationClient()
req = av.ValidateAddressRequest(
address=av.PostalAddress(region_code="IR", locality="Tehran", address_lines=["Valiasr St, No. 123"])
)
resp = client.validate_address(request=req)
print(resp.result.verdict, resp.result.address.formatted_address)
Существует официальная библиотека Python для проверки адресов. Google Cloud
(Необязательно) Стиль облака и идентификатор карты
Если вам нужен фирменный пользовательский интерфейс, в консольном режиме Стиль облачной карты Создайте, получите идентификатор карты и установите его в клиенте (поддерживаются как Web JS, так и Static/Android/iOS). Вы можете обновить стиль из консоли, не изменяя код. Для быстрого вдохновения, Мастер стиля Видеть.









