IP de l'Emplacement à l'aide de Javascript
<script type="application/javascript">
function getip(json){
alert(json.ip); //alerts the ip address
}
</script>
<script type="application/javascript" src="http://jsonip.appspot.com/?callback=getip"></script>
Je peux obtenir l'IP de l'Utilisateur par le présent code...
Je veux trouver l'emplacement de cette propriété intellectuelle.
Comment puis-je?
- Qu'entendez-vous par "l'emplacement?" Latitude/longitude?
- oui Latitude/longitude?
- être conscient de la latitude/longitude que vous obtenez est probablement pas très précis. Mon adresse IP à la maison jusqu'à environ 30 kilomètres de l'endroit où je suis en fait situé; il montre l'endroit où mon fournisseur d'accès internet est. Ce pourrait être "assez bon" en fonction de ce que vous faites, mais vous devez comprendre les limites.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez soumettre l'adresse IP que vous recevez à la mise en ligne des services de géolocalisation, comme
http://www.geoplugin.net/json.gp?ip=<your ip here>&jsoncallback=<suitable javascript function in your source>
, puis y compris la source de renvoie qui va exécuter la fonction que vous spécifiez dansjsoncallback
avec les informations de géolocalisation.Alternativement, vous pouvez regarder en HTML5 fonctionnalités de géolocalisation, vous pouvez voir une démo de en action ici. L'avantage, c'est que vous n'avez pas besoin de faire des requêtes à des serveurs étrangers, mais il peut ne pas fonctionner sur les navigateurs qui ne prennent pas en charge HTML5.
geoPlugin
ou ajouter unjsoncallback
paramètre, par exemple&jsoncallback=myMethod
sur l'URL.Un libre et open source géré par une collectivité de géolocalisation ip de service qui s'exécute sur le MaxMind de la base de données est disponible ici:
https://ipstack.com/
Exemple
Limitation
De 10 000 requêtes par mois
Je tiens à préciser que si vous utilisez http://freegeoip.net/, vous n'avez pas besoin de fournir l'adresse IP de la localisation du client. Juste essayez ces:
1) http://freegeoip.net/xml/
2) http://freegeoip.net/json/
3) http://freegeoip.net/csv/
Cependant, je suis incapable de récupérer les informations avec des appels AJAX, probablement à cause de certains de la croix-de la politique d'origine. Apparemment, ils n'ont pas permis l'accès du public à leur système.
Il est assez facile avec un API qui mappe l'adresse IP de l'emplacement. Exécutez l'extrait de code pour obtenir de la ville & pays de l'IP dans la zone de saisie.
JS:
HTML:
Juste au cas où vous n'étiez pas en mesure d'accomplir le code ci-dessus, voici une façon simple de l'utiliser avec jquery:
Une meilleure façon est de passer de "l'homme du milieu" (ip)
Cela vous donne la IP, le ville, le pays, etc
Soit l'un des liens suivants doit prendre soin de cette:
http://ipinfodb.com/ip_location_api_json.php
http://www.adam-mcfarland.net/2009/11/19/simple-ip-geolocation-using-javascript-and-the-google-ajax-search-api/
Ces liens ont des tutoriels pour l'obtention d'une position à l'aide de Javascript. Cependant, ils le font au travers d'une API externe, le service de données. Si vous avez un très haut trafic du site, vous pouvez à l'hébergement des données vous-même (ou l'obtention d'une prime de service api). Pour héberger tout ce que vous-même, vous devrez héberger une base de données de Géolocalisation IP et d'utiliser ajax pour nourrir les utilisateurs d'un emplacement en Javascript. Si cette approche vous voulez prendre, vous pouvez obtenir gratuitement la base de données des informations de propriété intellectuelle ci-dessous:
http://www.ipinfodb.com/ip_database.php
Veuillez noter que cette méthode implique d'avoir à mettre à jour régulièrement la base de données pour rester précis dans le traçage des adresses ip à des endroits.
Un plutôt bon marché option serait d'utiliser la ipdata.co API, c'est gratuit jusqu'à 1 500 requêtes par jour.
JS:
HTML:
Afficher le Violon à https://jsfiddle.net/ipdata/6wtf0q4g/922/
vous pouvez utiliser ipinfodb après l'obtention de votre clé api que vous pouvez faire une requête pour un emplacement à l'égard d'une ip comme ceci
http://api.ipinfodb.com/v2/ip_query.php?key=" + apiKey + "&ip=" + ip + "&output=xml
vous pouvez ensuite extraire ensuite l'emplacement de la réponse xmlVous pouvez utiliser ce service google gratuit de géolocalisation IP webservice
mise à jour
le lien est cassé, je l'ai mis ici un autre lien qui incluent @NickSweeting dans les commentaires:
ip-api.com
et vous pouvez obtenir les données au format json:
http://ip-api.com/docs/api:json
Vous avez besoin d'une base de données qui contient l'adresse IP et l'emplacement de la cartographie. Ou vous pouvez utiliser un grand nombre d'outils en ligne pour atteindre cet objectif, par exemple: http://www.ipligence.com/geolocation
Google returs beaucoup de résultat sous les mots clés: "adresse IP"
Essayer TUQ GEO IP API, il est gratuit et vraiment propre et doux avec le soutien jsonp
http://tuq.in/tools/geo
http://tuq.in/tools/geo+stats
Je vous recommande d'utiliser cette pour trouver l'emplacement d'une adresse IP.
Son très facile à utiliser, ayant une grande vitesse de requête, un minimum de latence et de la grande mise à jour hebdomadaire de la base de données. En plus des plans payés, il a également gratuit plan de 45000 demandes par mois.
Vous devez d'abord vous abonner à https://ipgeolocation.io/ et sélectionnez votre choix
plan.
Puis connectez-vous et copier la clé API à partir du tableau de bord.
Maintenant utiliser cette API clé pour trouver la localisation de l'adresse IP comme suit:
curl 'https://api.ipgeolocation.io/ipgeo?apiKey=API_KEY&ip=1.1.1.1'
, Vous obtiendrez une réponse JSON comme suit:
Remarque: Certains avantages secondaires de cette solution, vous pouvez également obtenir le fuseau horaire de l'API et de l'Astronomie de l'API.