公司开发的网站需要接入百度的地图API,我去看了看,初步了解了一下,发现地图调用比较好用,特记录下百度地图开发的相关知识点。。。
一、代码引入,百度地图的api使用比较方便。html代码如下
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=Tw6pQeGC6mYYTxDkc3VoD0jg"></script>
<style type="text/css">
#allmap{width:385px;height:270px;}
</style>
<div id="allmap"></div>
javascript代码如下:
<script type="text/javascript">
// 百度地图API功能
var cityName = "${param.cityName}"
var map = new BMap.Map("allmap");
map.centerAndZoom(cityName,5);
var opts = {type: BMAP_NAVIGATION_CONTROL_ZOOM}
map.addControl(new BMap.NavigationControl(opts));
var local = new BMap.LocalSearch(map, {
renderOptions:{map: map}
});
function searchHos(){
var hosName = "${param.hosName}";
local.search(hosName);
}
searchHos();
</script>
二、相关注意事项:
另:1.代码中的<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />,作用是让移动端使用显示合理。
2.调用api时应提供ak也就是百度密钥
3.关于地图级别的意思,百度地图自身有17个级别,如下:
{"20m","50m","100m","200m","500m","1km","2km","5km","10km","20km","25km","50km","100km","200km","500km","1000km","2000km"}
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> 但是,提供的开发包只支持16个级别, Level: 3~18, 比例尺如下:</span>
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"></span><pre name="code" class="javascript">{"50m","100m","200m","500m","1km","2km","5km","10km","20km","25km","50km","100km","200km","500km","1000km","2000km"}
4.版权及收费问题:百度地图API面向公众服务类网站是免费的,但前提是您的网站所提供给用户的地图服务模块也必须是免费的。如果您使用百度地图且用于商业应用(如GPS运营等),从而直接或间接获得收益,您需要同百度地图另行达成协议或获得百度地图的事先书面许可。
5.技术问题,访问频率限制:
用户同时在线数:按每秒初始JS获取来计算,支持每秒1000~1500次;
检索服务支持800次/秒;
公交、驾车服务400~600次/秒;
地理编码性能支持200次/秒;
带宽限度:由于API数据量较小,完全支持服务;
坐标转换接口:单ip 50次/秒;(超过100次返回403错误)
静态图:独立IP 10个/秒。
三、总结:整体来说百度地图的引用还是比较方便的,百度公司程序的能力可见一斑。
1.地图大小代码中进行了调整,但是地图加载的时候并未显示详细的结构,显示比较粗略。
2.调整地图级别也未解决问题,需再看api介绍。