所谓API密钥(API Key),其实就是一个字符串,在使用script标签导入API类库的时候作为请求参数传给谷歌的地图服务器,形式就是:
- <mce:scriptsrc="http://ditu.google.com/maps?file=api&v=2&key=你注册的API密钥"mce_src="http://ditu.google.com/maps?file=api&v=2&key=你注册的API密钥"type="text/javascript"></mce:script>
使用谷歌地图API的第一步就是要注册一个API密钥,谷歌的API使用条款 对这个密钥的用途有很正式的说明,其实总结起来也很简单:
1、谷歌地图API提供的服务是免费的,对于通过API正常使用谷歌地图的网站基本没有任何限制;
2、说“基本”没有限制的原因是,谷歌对每个API密钥对应的网站所作的地理编码/地址解析请求次数有限制,每天(24小时)的请求次数不能超过15000次;
3、不能使用谷歌地图从事任何非法的行为,否则谷歌应该能够通过这个密钥阻止你的网站使用谷歌地图;
更简单的说,谷歌使用这个密钥保证能够对所有API用户/网站进行区分,方便必要的时候对“超常规”用户进行阻拦。
对于地址解析的次数限制,一般来说不会有什么影响,这里主要说API密钥,所以以后有时间可以再详细说说地址解析相关的东东。
对于API密钥,还有几点需要记下来:
1、如果使用API的页面还没有发布,只是在本地调试,可以不用密钥,随便用个字符串代替就可以了;
2、API密钥只对网站目录或者域有效,所以,虽然你是使用同一个谷歌帐号登录后注册的密钥,但是,对不同域的网页,需要用这些域分别注册不同的密钥,对于同一个域里的页面,直接拿你网站的域名注册一个,在这个域里的所有页面就可以通用这个密钥了。
还有一个关于API密钥的实际问题:
在论坛里还有人问过,同一个页面需要支持不同的域名,最简单的就是公司有一个cn域名,也有一个com域名,这怎么办?
其实,对于这种问题,可以提前先注册好不同域名对应的密钥,存在你的JS变量里面,页面加载时通过window.location得到当前请求页面的域名,通过这个域名在找到对应的密钥,然后使用script动态加载的方法加载地图API,用代码描述就是:
-
varkeyMapping={host1:key1,host2:key2};
-
-
varrequestHost=window.location.hostname;
-
-
varkey=keyMapping[requestHost];
-
-
varapiUrl="http://ditu.google.com/maps?file=api&v=2&key="+key;
-
-
varscriptTag=document.createElement('script');
-
scriptTag.setAttribute('type','text/javascript');
-
scriptTag.setAttribute('src',apiUrl);
-
document.getElementsByTagName('head')[0].appendChild(scriptTag);
使用这段代码时,需要注意把你自己的JS代码中对API的各个类的调用放在API加载完成以后,详细的解释可以先google一下著名的DomReady的问题,三言两语还是说不清楚的,呵呵。
这段代码我没有实际跑过,欢迎斧正,如果你有更好的方法,我更愿意洗耳恭听了。
分享到:
相关推荐
高德地图API文档AMap_Android_API_3DMap_Doc.CHM,移动开发使用对Android进行3DMAP进行开发, 地图显示包,帮助您在Android应用程序中显示高德地图,并且支持地图交互手势的功能。 com.amap.api.maps.model 覆盖物...
谷歌地图Google Map API中文开发文档 V3
Google Map API 使用示例
一、申请google Maps API key(用于开发和debug) 二.Google Map API的使用 三.实例开发
Android google map apiv2的最新申请密钥方式,详细图解,还总结了一些地图的最基本功能的代码调用。
google地图API实现的一个简单demo
该实例实现google map和ExtJs结合开发,实现图层管理、图层可见性控制、图层要素详细信息查看等功能。
安卓Android源码——写的google map api 应用.zip
申请Android Google Map API key
google maps 谷歌地图jar 谷歌地图jar com.google.android.maps.jar
采用离线的 Google Map API 加载离线水经注谷歌地图下载器的地图数据
在线地图 利用google map api 、天地图api、MapBar api、进行地图开发 离线地图 地图保存到本地,用现有技术对数据进行访问。
自己做的谷歌地图桌面版 里面的文本文件记述了安装和卸载方法。 v1.5(增加mark和坐标显示): http://download.csdn.net/source/2064688
包含了利用Google Map API进行二次开发的很多实例,为刚开始接触Google Map API进行二次开发的读者提供了一条捷径。
ASP.NET源码——GoogleMap地图控件应用源码.zip
GoogleMaps API V3离线下载工具及使用.zip 主要对其地图的下载,及自我编制。 离线下完全可以使用,只需先进行地图的下载。 添加了控件,离线下可进行操作。。。
谷歌地图api v3 学习文档,资料查询, 基础学习。
google开发密钥,mapView 小例子,适合初学者
google地图开发。谷歌地图 Google Maps API是Google自己推出编程API,可以让全世界对Google Maps有兴趣的程序设计师自行开发基于Google Maps的服务,建立自己的地图网站。