Web 地理定位(Geo-Location)知识大全

By admin in 亚洲必赢app在哪下载 on 2018年11月20日

在线地图已是格外平凡的利用,Google Map
甚至可当驾驶导航仪,然而,这些使的实现关系到复杂的艰苦工作,仅仅是固定你现在之岗位,就有成千上万技能,有幸的凡,如今于你的
Web
站点中,你得经过短短的几执代码,获得一个用户的地理位置,本文介绍的是故当
Web 中的各种地理定位技术。

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

互联网而大凡一个英雄的网,上面的诸一样华计算机对应一个 IP 地址,通过之
IP 地址,可以知晓者用户以啊职位,我们可以通过查询 Maxmind GeoIP
数据库 获得,Maxmind 还提供了一个 JavaScript
接口为您以网站及贯彻即时无异效。

亚洲必赢app在哪下载 1

 

夫法(演示)有一个问题,就是说,你取得的
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
以上)。需要通过浏览器查询好地理位置的用户,在浏览器被,会显示一个对话条,请求而的授权。如下图所示:

亚洲必赢app在哪下载 2

以下是要使用该功能的代码:

亚洲必赢app在哪下载 3

下面的演示,可以充分好地示范上面两种植地理信息获得技能的例外,可以见见,他们以测量用户地理位置地方产生许多例外。

亚洲必赢app在哪下载 4

拿经度/维度转换为地喻为

以经度/维度信息易为地位,称为 反
Geo-Location,网络直达起成千上万立类服务可以以,其中最红的凡 the geo-names Web
service,
但它本时有发生几乎独问题,比如,它的结果是因美国为主干的。另一个但免费用,且支持世界信息,但敞亮之人数连无多的劳动来一个被人口略出乎意料的地方,Flickr。Flickr
的 flickr.places.findByLatLon 服务可因经纬度信息返回地名,你可以于 app
explorer 做下体验,但眼前不过简单易行的艺术是动 Yahoo Query
Language ( Yahoo 查询语言,简称 YQL). YQL
的样子如下:

亚洲必赢app在哪下载 5

采用 YQL 查询语言,你可获取 XML 或 JSon 格式的多寡,下图是以
JavaScript 中凡是行使该查询语言的例子:

亚洲必赢app在哪下载 6

整合方面的例证,在反 Geo-Location
查询的增援下,我们获取了详实的地名信息:

亚洲必赢app在哪下载 7

经纬度的题材

 

由此纬度虽然可以稳定地球上之一个职位,但经过纬度有时候爱招惹歧义,为了缓解者问题,Yahoo
和 Flickr
(Twitter 很快也会支撑)支持任何一样栽固定法,叫 Where On Earth
Identifier (简称 WOEID)
。使用该措施,我们好好爱得来自某区域的 Flickr 图片。

亚洲必赢app在哪下载 8

这样几句 JavaScript 代码就得显得来自指定地理位置的图片:

亚洲必赢app在哪下载 9

这些代码还可以包成函数,下面的代码,将显得来自巴黎底10轴照片,你可以团结以 YQL
console 中体验:

亚洲必赢app在哪下载 10

每当文字内容被机动开地理信息

一经你想抱同等截文字,或者一个网页内容所提到的地名的地理位置的信,Yahoo
提供了一个分外好的劳动,叫 Placemaker。从
Yahoo 那里得到一个 developer
key 就可采用该服务了。只需要创建一个发布表单发布暨 http://wherein.yahooapis.com/v1/document,将
Developer Key 以 appid 发布,需要查询的文以 documentContent
发布,将亲笔类型为 documentType 发布,同时用 outputType
定义返回数据类型,如下:

亚洲必赢app在哪下载 11

公吗可以在这里亲自感受一下,使用
PHP 调用该 API
亚洲必赢app在哪下载,甚至可针对输出数据的格式进行设置。这里还有一个使用
PlaceMaker 设计 GeoMaker 服务,简单输入文字或
URL,选择位置,就好回地图。

亚洲必赢app在哪下载 12

盖还可以在 JavaScript 中通过 YQL 使用
PlaceMaker,我们得经几段落客户端脚论以相同的效果:

亚洲必赢app在哪下载 13

君需要三样东西,一段放在有 HTML 对象吃的,包含地理位置的文字,一个
Google Maps API Key
(申请) 以及以下代码:

亚洲必赢app在哪下载 14

在网页中插地图

在线地图有过多,Google Map 是内部的领先者,除了 Google,Yahoo,
微软都提供地图服务,还有一个被做 Open Street
Maps 的绽开地图服务,当上次海地地震救援中给派上用场。在网页遭到插入交互地图太简易的措施是用 Mapstraction,它提供一个
JavaScript 库,24ways
曾上了千篇一律篇雅好的介绍文章。如果你仅仅想以网页上放上你的地图,指示而的职位,而不思使用最多
JavaScript, Google static
maps
API 是最好的挑,它见面扭转静态地图,以下代码可以拿这个静态地图插入你的网页(Google
还提供了一个开立静态地图的工具):

亚洲必赢app在哪下载 15

 

正文国际来源:http://www.smashingmagazine.com/2010/03/08/entering-the-wonderful-world-of-geo-location/

中文编译来源:锐商企业CMS 网站内容管理网 官方网站

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2018 亚洲必赢app官方下载 版权所有