2015-03-10 3 views
0

Я знаю, что Android имеет способ получить местоположение, а W3C имеет API-интерфейс местоположения для веб-браузеров, но есть ли способ получить мое местоположение прогромно на моей собственной машине?Как я могу, локально - на своей машине получить свое местоположение?

Я бегу Ubuntu 14.10

Edit: Удалены рубин тегов. Открытие любого языка.

+0

Почему тег Ruby? – steenslag

+1

вам нужен GPS для этого – hek2mgl

+0

это не нужно gps, и это действительно точно: http://www.w3schools.com/html/html5_geolocation.asp – NullVoxPopuli

ответ

1

Короткий ответ на ваш вопрос: только с Ruby - вы не можете декодировать свой location при работе на localhost.

Вы можете попробовать использовать драгоценный камень trifle для этого, но то, что он делает, это GeoIP country lookup. Поскольку вы хотите попробовать декодировать ваш localhost - он не может просто работать.

Как это работает - есть база данных IP-адресов и ассоциированных городов. Это будет работать при развертывании приложения, и оно попытается расшифровать местоположение вашего посетителя.

Пример в их github довольно прост. После того, как ваш trifle драгоценный камень set up правильно (это требует сервер Redis, и загрузка при условии, файл с предопределенным IP-адресов и связанных с ними городов):

trifle = Trifle.new(Redis.new) 
trifle.find "223.255.128.0" 
# => ["HK", "Hong Kong"] 

# or you can try to play with it in controller 
trifle.find request.remote_ip 

Что вы можете сделать, чтобы определить местоположение при работе в locahost:

Существует способ получить доступ к компьютеру для доступа к вашему приложению, используя возможности браузера. Существует отличная статья в tutsplus - http://code.tutsplus.com/tutorials/an-introduction-to-the-geolocation-api--cms-20071. Это будет работать с localhost

Существует довольно длинный код, поэтому я не скопирую его здесь, но объяснение очень хорошее. Вы можете легко реализовать свое решение на основе статьи, и местоположение очень точное. Ограничение для этого - браузер спрашивает, может ли он получить местоположение компьютера, и пользователь может не разрешить эту операцию. Невозможно форсировать его.

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

Удачи вам!

+0

намерение моего вопроса состоять в том, чтобы какое-то задание cron разместил место моего ноутбука где-то каждые 10 или около того секунд, так что, если он будет украден, я узнаю, где он находится, при условии, что есть сетевое соединение. – NullVoxPopuli

+0

хороший, подробный ответ, хотя! upvote – NullVoxPopuli

+1

@NullVoxPopuli https://preyproject.com – Stefan

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