Поддерживается ли google.loader.clientlocation?

Я провел несколько тестов, используя google.loader.ClientLocation из:

Но я получаю ноль для теста:

if (google.loader.ClientLocation) 

Это поведение, когда Google не находит информацию по IP.

Я искал StackOverflow, и по нему есть много вопросов, но нет хороших ответов.

Я поискал в сети и увидел эти 2 ссылки:

Кажется, что следует использовать геолокацию HTML навигатора.

В документации Google API об этом больше не упоминается.

Я хочу получить подтверждение, работает ли Google google.loader.clientlocation?

Мой код следующий:

<html>
<head>
  <script type="text/javascript" src="http://www.google.com/jsapi"></script>
</head>
<body>
<script type="text/javascript"> 
function geoTest() {

    if (google.loader.ClientLocation) {

        var latitude = google.loader.ClientLocation.latitude;
        var longitude = google.loader.ClientLocation.longitude;
        var city = google.loader.ClientLocation.address.city;
        var country = google.loader.ClientLocation.address.country;
        var country_code = google.loader.ClientLocation.address.country_code;
        var region = google.loader.ClientLocation.address.region;

        var text = 'Your Location<br /><br />Latitude: ' + latitude + '<br />Longitude: ' + longitude + '<br />City: ' + city + '<br />Country: ' + country + '<br />Country Code: ' + country_code + '<br />Region: ' + region;

    } else {

        var text = 'Google was not able to detect your location';

    }

    document.write(text);
}

geoTest();

</script>
</body>
</html>

person Community    schedule 07.01.2013    source источник
comment
он все еще работает, но ненадежно   -  person Dr.Molle    schedule 07.01.2013
comment
Спасибо за ответ, у вас есть ссылка, в которой говорится об этом. Из второй ссылки, о которой я упоминаю, кажется, что даже Google говорит использовать что-то еще.   -  person    schedule 07.01.2013
comment
У меня нет ссылки, но я ее знаю, потому что вчера она вернула мне результат (никуда не годный, в 300 км от моей позиции). Активной поддержки может и не быть, но она все еще присутствует (иначе вчера я бы не получил результат, и google.loader.ClientLocation будет undefined, если результат недоступен, но это null). Я не видел официального объявления о том, что он больше не поддерживается, комментарий внутри группы новостей не является официальным заявлением.   -  person Dr.Molle    schedule 07.01.2013
comment
Но вторая ссылка от разработчика Google в google-ajax-apis. Мой вопрос больше о том, что он все еще поддерживается или близок к тому, чтобы от него отказаться Google.   -  person    schedule 07.01.2013
comment
вторая ссылка не содержала никаких подробностей о планах на будущее. вы можете спросить их   -  person Dr.Molle    schedule 07.01.2013
comment
Я не могу найти никакой документации относительно того, поддерживается он официально или не рекомендуется, но в текущем источнике https://www.google.com/jsapi он читает google.loader.ClientLocation = null;. Но хотя ClientLocation инициализируется значением null, он не вызывается и не назначается иным образом где-либо еще в коде, поэтому вызов google.loader.ClientLocation, по-видимому, будет возвращать null при каждом вызове.   -  person zeantsoi    schedule 08.01.2013


Ответы (1)


Похоже, этот API "устарел", хотя он все еще работает для некоторых IP-адресов.

Это ответ, который я получил отсюда:

Функциональность геолокации в Загрузчике, по сути, никуда не делась. Мы прекратили документировать это несколько лет назад и рекомендовали решения на основе HTML из-за их повышенной точности, но сама функциональность не была удалена из загрузчика в настоящее время. Спасибо!

Поэтому, когда местоположение не найдено для IP, google.loader.ClientLocation имеет значение null

person Community    schedule 09.01.2013
comment
тогда что вы использовали для получения текущего местоположения пользователя? - person Abhishek saini; 27.02.2018