http get / post запрос и API геолокации Google - PullRequest
1 голос
/ 14 апреля 2009

Я использую веб-приложение на веб-сайте http://m.rummble.com, и когда я нажимаю, найдите свое местоположение с помощью передач. Приложение возвращает мое текущее местоположение (приблизительное местоположение города) с различными заведениями в заданном радиусе мили. Чтобы лучше понять, как это работает, я открыл wireshark и заметил, что запрос POST отправляется по адресу www.google.com/loc/json. Затем сервер Google отвечает 200 OK и данные о местоположении в формате JSON. Я понимаю эту часть. Следующим шагом является то, что я не понимаю. Очевидно, что после того, как приложение rummble получит данные о местоположении (широта, длина, адрес и т. Д.), Оно отправляет эту информацию с помощью запроса GET на некоторый API на другом сервере, который получает различные заведения в данном радиусе мили. Все, что я сделал, это щелкнул, чтобы найти свое местоположение, используя механизмы. Я бы разумно ожидал, что приложение просто вернет мое местоположение, но оно возвращает больше, чем это, не нажимая никаких других кнопок в приложении. Может кто-нибудь объяснить, как это происходит? Есть ли сценарий, который делает это? Надеюсь, я лучше объяснил свою ситуацию.
альтернативный текст http://img211.imageshack.us/img211/1236/examplel.jpg

Ответы [ 2 ]

0 голосов
/ 24 августа 2009

По какой-то причине rummble.com не запрашивает navigator.getlocation на моем компьютере, поэтому я не могу подтвердить ваш отчет самостоятельно.

Однако, когда вы нажимаете, чтобы rummble.com мог получить ваше местоположение от Gears, вы передаете эту информацию о местоположении на веб-сайт rummble.com. Затем этот веб-сайт может свободно делать с ним все, что захочет - информация возвращается к фрагменту Javascript, запущенному в браузере, и в этом случае кажется, что этот фрагмент Javascript использует информацию о вашем местоположении для загрузки списка ближайших рестораны.

Вы могли бы очень разумно волноваться об этом. Что, если rummble отправил ваше имя и информацию о местоположении рекламодателю или правительству? Как долго они хранят вашу точную информацию о местоположении? Вы должны рассмотреть эти последствия до того, как даст разрешение поделиться своим местоположением с веб-сайтом.

0 голосов
/ 14 апреля 2009

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

  1. Найти базу данных IP-адресов. Быстрый поиск в Google показал http://ip -to-country.webhosting.info / downloads / ip-to-country.csv.zip
  2. Отследите маршрут и выполните обратный поиск IP-адресов к именам хостов, используя DNS, и попытайтесь прочитать имена хостов для геоинформации, например, страны и города.

В любом случае, если у вас есть страна и / или город, вы можете выполнить гео-поиск, чтобы найти широту и долготу, и отобразить карту на основе этих координат.

Предположительно, в Google Gears используется нечто подобное или, возможно, основанное на данных, которые Google собирает с использованием различных методов сбора данных. Таким образом, как только Google Gears определит, где находится пользователь, он узнает, в каком городе / стране он находится, и запросит соответствующую широту и долготу.

...