@ratatyq

Почему не выводятся мои координаты на сайт?

Здравствуйте, стоит задача, определить местоположение, взял пример с сайта
www.w3schools.com/html/html5_geolocation.asp

В итоге вот мой код:
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>GPS</title>
</head>
<body>
	<p>This is coordinate:</p>
	<p class="coord"></p>
	<p id="demo"></p>
	<button onclick="getLocation()">Click me</button>
	<script>
		var x = document.getElementById("demo");
		function getLocation() {
			console.log("->getLocation");
		    if (navigator.geolocation) {
		        navigator.geolocation.getCurrentPosition(showPosition);
		    } else {
		        x.innerHTML = "Geolocation is not supported by this browser.";
		    }
		}
		function showPosition(position) {
		    x.innerHTML = "Latitude: " + position.coords.latitude + 
		    "<br>Longitude: " + position.coords.longitude; 
		}
	</script>
</body>
</html>

Но при попытке получить местоположение
1) хром не просит запроса на разрешения геолокации
2) в консоли выводиться вот это:

->getLocation
(index):17 getCurrentPosition() and watchPosition() no longer work on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gl/rStTGz for more details.

Кажеться дело в том что нужно использовать HTTPS но, можно ли как то без https?
  • Вопрос задан
  • 264 просмотра
Пригласить эксперта
Ответы на вопрос 1
MikeKosulin
@MikeKosulin
Без https нельзя, как и пуши. В целом, лучше сейчас вообще переходить на HTTPS, т.к гугл хром будет скоро помечать сайты как небезопасными.
Решить эту проблему можно использованием бесплатных сертификатов от https://letsencrypt.org/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы