Upload
sshpack
View
614
Download
1
Embed Size (px)
DESCRIPTION
Citation preview
Разработка Geo приложений с Разработка Geo приложений с использованием Google API.использованием Google API.
Докладчик: Безродний АлексейДокладчик: Безродний Алексей
Что такое Google API Console
http://www.code.google.com/apis/console
11 мая 2011, конференция разработчиков Google I/O
Открытие доступа к Google Places API
Google Palces API
Поиск мест Получение
детальной информации
Рейтинги Добавление мест
Как это работает?
Поиск мест
https://maps.googleapi.com/maps/api/place/search/json ?location=44.35,-122.67 &radius=50 &sensor=true &key=Your_application's_API_key
Ответ от сервера (формат JSON)
{ status: "OK", results: [{ name: "Sushishop Paris - Monge", types: [ "restaurant", "food", "establishment" ], geometry: { location: { lat: 48.85, lng: 2.34 } }, icon: "http://gstatic.com/...restaurant.png",
reference:"CoQBeAAAAO-prCRp............A",id:"0a4e24c365f4bd70080/.....ba3faced8"
}, { name: "Hotel Abbatial", types: [ "hotel", "establishment" ], .......... }, ...]}
OK — все хорошо.
ZERO_RESULTS - говорит что запрос прошел успешно, но не найдено ниодного подходящего результата.
OVER_QUERY_LIMIT - указывает на то что Вы превысили свой лимит обращений к серверу.
REQUEST_DENIED - указывает, что ваш запрос был отклонен, как правило, из-за отсутствия sensor параметра .
INVALID_REQUEST - обычно указывает, что обязательный параметр запроса (location или radius) отсутствует .
Статусы ответа
https: // maps/api/place/details/(json/xml) ?reference=CnRwAAAA01HSTsHHpfo6Scna3fguz.. &sensor=true &key=Your_application's_API_key
Детальная информация
{ "status": "OK", "result": { "name": "Google Sydney", "vicinity": "Pirrama Road, Pyrmont", "types": [ "establishment" ], "formatted_phone_number": "(02) 9374 4000", }, "rating": 4.5}
Ответ от сервера (формат JSON)
Request: (POST) https://maps.googleapis.com/maps/api/place/check-in/json?sensor=true_or_false&key=api_key HTTP/1.1Host: maps.googleapis.com{ "reference": "place_reference"}
Response:{ status: 'OK'}
Рейтинги. Пример запроса и ответа.
Геокодер
http://maps.google.com/maps/geo?q=Николаев+Ленина+128&output=json&oe=utf8&sensor=true_or_false&key=your_api_key
200,8,47.0266880,31.9183780
• HTTP-код состояния• Точность• Широта• Долгота
Ответ геокодера в формате CSV
{ "name": "Николаев Ленина 128", "Status": { "code": 200 }, "Placemark": [ { "address": "ул. Ленина, 128, Николаев, Николаевская область, Украина", "AddressDetails": { "Country" : { "AdministrativeArea" : { "AdministrativeAreaName" : "Николаевская область", }, "CountryName" : "Украина" } "Point": { "coordinates": [ 31.9183780, 47.0266880, 0 ] } }
Ответ геокодера в формате JSON
Спасибо за внимание.Спасибо за внимание.Ваши вопросы.Ваши вопросы.