Есть ли простой способ определить, в каком полушарии находится пользователь?

Я работаю над проектом, который включает сезонный контент, и мы думаем об определении местоположения пользователя, чтобы выяснить, какой сезон для них. Очевидный способ сделать это-Гео-найти их IP, а затем захватить широту. > 0-Северное полушарие, а

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

заголовки запросов, вещи, которые можно извлечь с помощью JS на клиенте, все это достаточно легко получить - я просто не думаю, что это помогает.

2 ответов


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

если нет информации dst, вы можете использовать геолокацию,

или спросите пользователя, находится ли он к югу от экватора...

window.whatHemisphere= (function(){
    var y= new Date().getFullYear();
    if(y.getTimezoneOffset()==undefined) return null;
    var jan= -(new Date(y, 0, 1, 0, 0, 0, 0).getTimezoneOffset()),
    jul= -(new Date(y, 6, 1, 0, 0, 0, 0).getTimezoneOffset()),
    diff= jan-jul;
    if(diff> 0) return 'N';
    if(diff< 0) return 'S'
    return null;
})()

можно использовать навигатор.геолокация метод для избежания любого вида обслуживания ИП.