羊皮纸论坛

羊皮纸论坛

分享让知识传播,阅读让心灵成长, 创作让文化传承,让我们共同努力。
  • 禁止广告文
  • 知识传播
  • 阅读
  • 心灵成长
  • 创作
  • 文化传承
发表新主题
随机主题
上个主题
下个主题
|
    Web 网页地理定位

    ???Web 网页地理定位 (Geo-Location)

    线上地图已经是很平常的应用,Google Map 甚至可以用作驾驶导航仪,然而,这些应用的实现涉及到千丝丌缕的艰辛工作,仅仅是定位你现在的位置,就有很多技术,有幸的是,如今在你的 Web 站点中,你可以通过短短的几行代码,获得一个用户的地理位置,本文介绍的是用在 Web 中的各种地理定位技术。

    通过 IP 地址获得用户的地理位置信息

    网际网路不过是一个巨大的网络,上面的每一台电脑对应一个 IP 地址,通过这个 IP 地址,可以知道这个用户在什麽位置,我们可以通过查询 Maxmind GeoIP 数库获得,Maxmind 还提供了一个 JavaScript 连接让你在网站上实现这个功能。
    <script type="text/javascript" src="http://j.maxmind.com/app/geoip.js"></script>
    <script>
    var info = document.getElementById('info');
    var lat = geoip_latitude();
    var lon = geoip_longitude();
    var city = geoip_city();
    var out = '<h3>Information from your IP</h3>'+
    '<ul>'+
    '<li>Latitude: ' + lat + '</li>'+
    '<li>Longitude: ' + lon + '</li>'+
    '<li>City: ' + city + '</li>'+
    '<li>Region: ' + geoip_region() + '</li>'+
    '<li>Region Name: ' + geoip_region_name() + '</li>'+
    '<li>Postal Code: ' + geoip_postal_code() + '</li>'+
    '<li>Country Code: ' + geoip_country_code() + '</li>'+
    '<li>Country Name: ' + geoip_country_name() + '</li>'+
    '</ul>'
    info.innerHTML = out;
    </script>
     
     
    这个方法(演示)有一个问题,就是说,你获得的 IP 地理位置信息未必非常准确,因为这个 IP 是你的 ISP 分配给你的,你获得的事实上是 ISP 的地理位置,另外,如果你使用 VPN,你实际的得到可能是十丌八千里之外的地方了。
     
    通过 W3C Geo API 获得用户地理位置

    通过 IP 地址获取用户地理位置还有一个棘手的问题,就是安全和隐私问题,毕竟,并不是每个用户都愿意自己的地理位置信息被别人知道,鉴於此,人们开发了很多技术,Google Gears 拥有一个 Geo-Location 服务,Plazes 帮助你保存你的位置,而 Yahoo Fire Eagle 算得上这类技术中最顺手的一个。然而这些技术共同的问题是,它们要求用户要麽安装一个外挂插件,要麽需要访问特定的 Web 服务,这有些麻烦。

    W3C 有一个 Geo-Location API 可以帮助浏览器制造商,在浏览器中整合地理信息功能。Firefox 3.5 以上的浏览器支持 W3C Geo-LocationAPI,同样支持该 API 的还有 iPhone 上的 Safari 浏览器(需要 OS3.0 以上)。需要通过浏览器查询自己地理位置的用户,在浏览器中,会显示一个对话条,请求你的授权。
     
    if(navigator.geolocation){
    navigator.geolocation.getCurrentPosition(
    function(position){
    var lon = position.coords.longitude;
    var lat = position.coords.latitude;
    },
    function(error){alert('ouch');}
    );
    }
    • 关键字 : script, position, Location, 地理位置信息, navigator, geolocation, function, coords, Region, Maxmind, Google, Country, 通过浏览器查询, 这些技术共同, 获得用户地理位置, 获得一个用户, 网页地理定位, 网际网路不过, 网站上实现这个功能, 线上地图已经
    00
    2010-07-08T09:54:00+0000


    • 当您未登入羊皮纸时,可以利用脸书 Facebook 登入来发表回响。若使用羊皮纸会员身份发表回响则可获得经验值及虚拟金币,用来参加羊皮纸推出的活动。
    发表回响
     
    验证字串
    留言

    Facebook 粉丝专页

    QRCode 条码 & APP 连结

    说明
    本页网址

    在相关服务标签中,『扫描条码,在行动装置』或是『点击连结按钮,在本装置』中开启网页或是 APP 相关操作。
    QRCode