百度地图开放平台
更新时间: 2026/09/10 16:28
配置环境

本文说明如何在微信小程序工程中引入小程序 JSAPI,并完成域名与权限配置。完成后即可调用任意接口。

环境准备
项目要求

开发工具

微信开发者工具(稳定版即可)

小程序项目

已创建好的小程序工程,创建方法见微信官方小程序开发指南

小程序 AppID

开发调试用测试号即可;正式发布需正式 AppID —— 测试号没有管理后台,无法配置 request 合法域名

开放平台 AK

SDK 文件

dist/bmap-wx.min.js(纯 ES5、已压缩,见相关下载

小程序项目的创建过程属于微信侧操作,本文不再重复,请直接参考微信官方文档《小程序开发指南 · 开始》。下面从引入 SDK 开始。

引入 SDK

相关下载页面下载开发包并解压,在项目根目录新建 libs 目录,把 dist/bmap-wx.min.js 拷贝进去:

├── app.js
├── app.json
├── app.wxss
├── libs
│ └── bmap-wx.min.js // 拷贝进来的 SDK
└── pages
└── index
├── index.js
├── index.json
├── index.wxml
└── index.wxss

在页面中按相对路径引入并实例化:

// pages/index/index.js
const { BMapWX } = require('../../libs/bmap-wx.min.js');
const bmap = new BMapWX({ ak: '您的ak' });
开发包中同时提供未压缩的源码 src/bmap-wx.js,便于阅读与调试;正式工程推荐引入 dist/bmap-wx.min.js
SDK 实例是无状态的(仅持有 ak),建议在工具模块中创建单例复用,不必每次调用都新建。
配置 request 合法域名

小程序只允许请求已登记的域名。登录微信公众平台 → "开发管理" → "开发设置" → "服务器域名",在 request 合法域名 中添加 https://api.map.baidu.com。保存并提交后,回到开发者工具点击"编译"或"刷新",域名配置即同步生效。

调试阶段跳过域名校验有两种方式:模拟器在开发者工具"详情 - 本地设置"中勾选"不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书";真机预览时点右上角"…"选择"打开调试"。
这两个开关都只对开发者自己有效,普通用户无法开启,因此正式发布前必须完成域名配置,否则线上请求会被拦截。
如果要使用 staticMap 静态图,还需额外配置 downloadFile 合法域名,详见"静态图"文档。
声明定位隐私接口

未显式传 location 时,SDK 会调用 wx.getLocation 获取当前位置。该接口属于隐私接口,需要在 app.json 中声明并在公众平台补充隐私协议:

{
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于检索周边地点、解析地址与查询天气"
}
},
"requiredPrivateInfos": ["getLocation"]
}
未声明 requiredPrivateInfos 时 wx.getLocation 会直接失败,表现为接口 fail 回调返回定位错误。详见微信官方用户隐私保护指引。若不希望使用定位,请在调用各接口时显式传入 location 参数。
验证配置

在页面 onLoad 中发起一次检索,控制台能打印出结果即表示配置成功:

// pages/index/index.js
bmap.search({
query: '美食',
location: '39.915,116.404',
success: res => console.log('检索成功', res.wxMarkerData),
fail: err => console.log('检索失败', err.statusCode, err.message),
});

接下来可以参考"Hello 我的小程序"完成第一个完整示例。

上一篇

账号和密钥

下一篇

Hello 我的小程序
本篇文章对您是否有帮助?