百度地图微信小程序 JavaScript API(下文简称"小程序 JSAPI")是面向微信小程序场景的百度地图能力封装。它把百度地图 Web 服务 API 中的常用接口按微信小程序规范做了前端 JS 封装,开发者无需关心签名、坐标系换算和错误码解析,即可在小程序中完成地点检索、地址转换、路线规划、天气查询和静态图渲染。
部分接口会把返回数据加工成小程序数据格式(如 wxMarkerData、wxPolylineData),可直接绑定到小程序 <map> 组件的 markers / polyline 属性上。
该套 API 全面支持 HTTPS 请求,免费对外开放,使用前需先申请密钥(AK)。在使用之前,请先阅读百度地图 API 使用条款。任何非营利性应用请直接使用,商业应用请参考使用须知。
当前版本为 v2.0,共提供 12 个方法,与百度地图 Web 服务 API 的对应关系如下:
其中 getWXLocation 是定位辅助方法。上述业务接口在未显式传 location 时会自动调用它获取当前位置,通常无需单独使用。
扫描下方小程序码即可体验示例 Demo,覆盖周边探索、周边检索、关键词联想、地址解析、逆地址解析、路线规划、静态图与天气查询等全部能力。

所有方法均为回调式调用,参数对象中传入 success 与 fail。各接口的具体字段见对应文档,此处是所有接口共同遵守的约定。
成功回调入参统一为 { originalData, ...规范字段 }。originalData 是 Web 服务接口的完整原始响应,规范字段是 SDK 加工后的小程序可用数据:
失败回调入参统一为 { errMsg, message, statusCode, rawMessage },字段含义如下(各接口文档不再重复):
需要注意经纬度顺序在不同接口之间并不一致:
已申请微信小程序类型的 AK,详见账号和密钥。
已在微信公众平台把 https://api.map.baidu.com 加入 request 合法域名,详见配置环境。
如需使用默认定位(不显式传 location),需在 app.json 中声明 getLocation 隐私接口。
完整示例小程序(周边探索、周边检索、关键词联想、地址解析、逆地址解析、路线规划、静态图、天气)见 GitHub 仓库 的 demo 目录。
// pages/index/index.jsconst { BMapWX } = require('./libs/bmap-wx.min.js');const bmap = new BMapWX({ ak: '您的ak' });bmap.search({query: '美食',success(res) {console.log(res.wxMarkerData); // 可直接绑定到 <map markers>},fail(err) {console.log(err.message, err.statusCode);},});
下一篇