Bem hoje vou mostrar como localizar o estado e a cidade do usuário pelo IP utilizando a api do google maps.
Vamos supor que você tenha que redirecionar o usuário uma determinada URL caso o mesmo esteja acessando de determinado estado ou apenas exibir onde ele está.
Graças a MaxMind temos a geolocalização por número de IP: a partir de um número IP, teremos dados sobre a localização, como latitude, longitude e outros.
Mãos a obra:
Faça o download da base de dados da MaxMind.
MaxMind DataBase(pelo site) ou GeoLiteCity.dat
Este arquivo é atualizado quase que mensalmente, assim você pode entrar la no site e atualizar sua base.
Agora faça o download do GMaps.dll. Esta DLL possui um conjunto de componentes que a google disponibilizou para utilizarmos os mapas de diversas formas.
Vamos supor que você tenha que redirecionar o usuário uma determinada URL caso o mesmo esteja acessando de determinado estado ou apenas exibir onde ele está.
Graças a MaxMind temos a geolocalização por número de IP: a partir de um número IP, teremos dados sobre a localização, como latitude, longitude e outros.
Mãos a obra:
Faça o download da base de dados da MaxMind.
MaxMind DataBase(pelo site) ou GeoLiteCity.dat
Este arquivo é atualizado quase que mensalmente, assim você pode entrar la no site e atualizar sua base.
Agora faça o download do GMaps.dll. Esta DLL possui um conjunto de componentes que a google disponibilizou para utilizarmos os mapas de diversas formas.
- Crie um novo webSite e copie o arquivo GeoLiteCity.dat para dentro da pasta App_data de preferência, depois coloque o arquivo GMaps.dll dentro da pasta bin, fazendo a referência.
- crie uma nova aba com o nome que preferir no Toolbox do visual Studio para adicionar os componentes do Gmaps, clique com o botão direito, "Choose items...", na aba ".NET Framwork Componentes" clique no botão "Browser" e selecione o arquivo GMaps.dll que você colocou na pasta bin do seu projeto. Os componentes serão carregados.
- Clique no componente GMap e arraste para para onde deseja que apareça o mapa.
- Use a referência "using Subgurim.Controles;" e escreva o código a baixo. Utilize este método dentro do PageLoad.
- No webConfig você tem que adicionar a chave do subgurim para funcionar. Entre na Família da Google Maps API, digite o domínio que você ira utilizar e clique no botão "Gerar chave da API". Copie a chave e cole no web config.
Se você estiver testando local não vai funcionar por que o "Request.UserHostAddress" vai retornar 127.0.0.1 para saber seu ip externo você pode entrar no MEU IP e substituir a variavel User_ip pelo seu IP externo.
Comments