У меня есть геолокационная пара широта / долгота, есть ли способ / инструмент для получения соответствующего часового пояса?
Веб-сайт EarthTools имеет веб-сервис для этого.
http://www.earthtools.org/webservices.htm#timezone
Вы можете передавать по широте и долготе следующим образом:
h ttp: //www.earthtools.org/timezone/40.71417/-74.00639
И он выплевывает часовой пояс и кучу другой информации:
<?xml version="1.0" encoding="ISO-8859-1" ?> <timezone xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.earthtools.org/timezone.xsd"> <version>1.1</version> <location> <latitude>40.71417</latitude> <longitude>-74.00639</longitude> </location> <offset>-5</offset> <suffix>R</suffix> <localtime>4 Dec 2005 12:06:56</localtime> <isotime>2005-12-04 12:06:56 -0500</isotime> <utctime>2005-12-04 17:06:56</utctime> <dst>False</dst> </timezone>
Если внешняя зависимость не идеальна (очевидно, это замечательно для геолокации на стороне клиента).
Тогда я рекомендую прочитать ответ на этот вопрос
Самый простой способ конвертировать lat lng / zip / city / state в часовой пояс в Ruby