API de geolocalização HTML

Neste artigo, discutiremos a geolocalização HTML . A localização é determinada usando a API de geolocalização HTML .

Acompanhe a posição do usuário:

A API de geolocalização HTML é usada para obter a localização geográfica de um usuário.

Devido a questões de privacidade, as posições só estão disponíveis se o usuário as autorizar.

Importante: Smartphones com GPS fornecem a geolocalização mais precisa.



Implementando geolocalização HTML

Para obter a localização do usuário, chame o método getCurrentPosition() .

A latitude e longitude do usuário podem ser obtidas usando o seguinte exemplo:

Veja a seguir um exemplo de geolocalização HTML:

Example: 

1
2
3
4
<!DOCTYPE html>
<html><body><br><br><br><br><p>Click the button to get your coordinates.</p><br><br><button onclick="getLocation()">Try It</button><br><br><p id="demo"></p><br><br><script><br>var x = document.getElementById("demo");<br><br>function getLocation() {<br> if (navigator.geolocation) {<br> navigator.geolocation.getCurrentPosition(showPosition);<br> } else { <br> x.innerHTML = "Geolocation is not supported by this browser.";<br> }<br>}<br><br>function showPosition(position) {<br> x.innerHTML = "Latitude: " + position.coords.latitude+<br>"Longitude: " + position.coords.longitude;<br>}<br></script><br><br><br>
</body></html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Exemplo de Explicação

  • Verifique se a geolocalização é suportada.
  • Se for compatível, chame getCurrentPosition(). Exiba uma mensagem de erro se não.
  • Um objeto de coordenadas será retornado se o método getCurrentPosition() for bem-sucedido.
  • Imprime a longitude e a latitude resultantes da função showPosition().
Dica: Um script de geolocalização HTML básico é mostrado acima sem tratamento de erros.

Exibindo resultado no mapa

Um serviço de mapa, como o Google Maps, é necessário para visualizar os resultados quando se trata de geolocalização HTML .

Aqui está um exemplo de uso de latitude e longitude para mostrar a localização em um mapa do Google (usando uma imagem estática):

Example: 

1
2
3
4
<!DOCTYPE html>
<html><body><br><br> <br> <title>Displaying Outcome on Map</title><br> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCKtH6rX_O-dwNY-e6pXkOoPCXsVuiB7xg"></script><br> <script><br> function initMap() {<br> // Define the coordinates for the outcome<br> var outcome = {lat: 37.7749, lng: -122.4194};<br> <br> // Create a map centered on the outcome<br> var map = new google.maps.Map(document.getElementById('map'), {<br> zoom: 12,<br> center: outcome<br> });<br> <br> // Add a marker at the outcome location<br> var marker = new google.maps.Marker({<br> position: outcome,<br> map: map,<br> title: 'Outcome'<br> });<br> }<br> </script><br> <br> <br> <div id="map" style="height: 400px;"></div><br> <br>
</body></html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Gerenciando erros e rejeições

Os erros são tratados pelo segundo parâmetro de getCurrentPosition() . Se não conseguir obter a localização do usuário, executa a seguinte função:

Example: 

1
2
3
4
5
<!DOCTYPE html>
<html><body><br><br><br><br><p>Click the button to get your coordinates.</p><br><br><button onclick="getLocation()">Try It</button><br><br><p id="demo"></p><br><br><script><br>var x = document.getElementById("demo");<br><br>function getLocation() {<br> if (navigator.geolocation) {<br> navigator.geolocation.getCurrentPosition(showPosition, showError);<br> } else { <br> x.innerHTML = "Geolocation is not supported by this browser.";<br> }<br>}<br><br>function showPosition(position) {<br> x.innerHTML = "Latitude: " + position.coords.latitude + <br>
" Longitude: " + position.coords.longitude;<br>}<br><br>function showError(error) {<br> switch(error.code) {<br> case error.PERMISSION_DENIED:<br> x.innerHTML = "User denied the request for Geolocation."<br> break;<br> case error.POSITION_UNAVAILABLE:<br> x.innerHTML = "Location information is unavailable."<br> break;<br> case error.TIMEOUT:<br> x.innerHTML = "The request to get user location timed out."<br> break;<br> case error.UNKNOWN_ERROR:<br> x.innerHTML = "An unknown error occurred."<br> break;<br> }<br>}<br></script><br><br><br><br>
</body></html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

informação geográfica

O objetivo desta página é explicar como fornecer um mapa da localização de um usuário.

Informações específicas do local também podem ser obtidas com geolocalização, como:

  1. Informações locais em tempo real
  2. Exibição de pontos de interesse próximos
  3. Navegação baseada em localização (GPS)

O método getCurrentPosition() – Dados de retorno

Em todos os casos, latitude, longitude e precisão são recuperadas. Em caso de sucesso, o método getCurrentPosition() retorna um objeto. Se disponível, outras propriedades também são retornadas:

Propriedade devoluções
coords.latitude Um número decimal que representa a latitude (sempre retornado).
coordenadas.longitude Uma representação decimal da longitude (sempre retornada).
coordenadas.precisão Precisão da posição (sempre retornada).
coords.altitude Retorna a altitude acima do nível médio do mar em metros (se disponível).
coords.altitudePrecisão Precisão da altitude da posição (retornada se disponível).
coords.heading Um rumo expresso em graus no sentido horário a partir do Norte (retornado se disponível).
coordenadas.velocidade Retorna a velocidade em metros por segundo (se disponível).
carimbo de data/hora Data/hora da resposta (se disponível).

Objeto de geolocalização – Métodos mais interessantes

O objeto de geolocalização também oferece os seguintes métodos interessantes:

  • watchPosition() – Encontra a localização do usuário e a atualiza conforme o usuário se move (semelhante a um GPS em um carro).
  • clearWatch() – Desativa o método watchPosition() .

WatchPosition() é ilustrado no exemplo abaixo. Para testar isso, você precisará de um dispositivo GPS preciso (como um smartphone):

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
<body>
<p>The coordinates of your location can be obtained by clicking the button.</p>
<button onclick="getLocation()">Try It</button>
<p id="coordi"></p>
<script>
var a = document.getElementById("coordi");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.watchPosition(showPosition);
} else {
a.innerHTML = "In this browser, geolocation is not compatible.";
}
}
function showPosition(position) {
a.innerHTML="Latitude: " + position.coords.latitude + "Longitude: " + position.coords.longitude;
}
</script>
</body>
</html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compatibilidade do navegador

De acordo com a tabela, a primeira versão do navegador a fornecer geolocalização está listada abaixo.

API
geolocalização 5,0 – 49,0 (http)
50,0 (https)
9,0 3.5 5,0 16,0

Observação: a partir do Chrome 50, a API de geolocalização funcionará apenas em contextos seguros, como HTTPS . Se o seu site estiver hospedado em uma origem não segura (como HTTP ), as solicitações para obter a localização dos usuários não funcionarão mais.

Importante: a API de geolocalização só funcionará em conexões seguras como HTTPS a partir do Chrome 50. Solicitações para recuperar a localização do usuário não funcionarão mais se seu site estiver hospedado em uma origem insegura (como HTTP).

Benefícios do uso de geolocalização HTML

A geolocalização HTML é um recurso que permite que os sites identifiquem a localização física de um usuário por meio de seu navegador da web. Existem vários benefícios em usar a geolocalização HTML:

  • Personalização: Com a geolocalização, os sites podem fornecer experiências personalizadas para os usuários com base em sua localização. Por exemplo, um site de varejo pode oferecer promoções e descontos baseados em localização para usuários em uma região específica.
  • Publicidade direcionada: a geolocalização pode ser usada por anunciantes para segmentar usuários com anúncios relevantes com base em sua localização. Isso pode aumentar a eficácia das campanhas publicitárias e melhorar a experiência do usuário, exibindo anúncios relevantes para os interesses e necessidades do usuário.
  • Experiência do usuário aprimorada: a geolocalização pode ser usada para fornecer aos usuários informações relevantes com base em sua localização, como atualizações do clima local, restaurantes próximos ou eventos. Isso pode melhorar a experiência do usuário e tornar o site mais útil e envolvente.
  • Análise baseada em localização: os dados de geolocalização podem ser usados ​​para obter informações sobre o comportamento e as preferências do usuário com base em sua localização. Essas informações podem ser usadas para otimizar o design, o conteúdo e as estratégias de marketing do site.
  • Maior segurança: a geolocalização pode ser usada como um recurso de segurança para impedir o acesso não autorizado a informações confidenciais. Por exemplo, um site pode exigir que os usuários confirmem sua localização antes de permitir o acesso a determinados recursos ou informações.

Se você achar este artigo informativo, assine nosso boletim informativo abaixo para ficar conectado com as informações técnicas mais recentes neste site.
Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone