一、场景
我希望通过一个按钮能获取到当前的位置信息。
比如说街道、周围的地标啥的…
二、编写代码、执行、并发现问题
1.通过 js获取到经纬度,
2.通过高德地图api提供的地理逆解析获取到相关信息;
3.根据 高德地图官方文档 各种配置,一顿操作; 结果执行逆解析的时候报错了
AMapLoader.load({
"key": "Web服务申请的key", // 问题出在这个key,这里类型是个大坑!!
"version": "1.4.15", // 默认为 1.4.15
"plugins":["AMap.Geocoder"],
}).then((AMap)=> {
console.log(`AMap`, AMap)
const geocoder = new AMap.Geocoder();
const lnglat = ["116.39","39.9"];
geocoder.getAddress(lnglat, function(status, result) {
console.log(`status, result`, status, result)
if (status === 'complete'&&result.regeocode) {
const address = result.regeocode.formattedAddress;
// address 就是获取的地理位置
}else{
console.error('根据经纬度查询地址失败')
}
});
})
控制台报错 =_=
status, result error USERKEY_PLAT_NOMATCH
三、查阅资料、解决问题
一、通过查阅高德文档 错误码说明, 知道了
10009 | USERKEY_PLAT_NOMATCH | 请求key与绑定平台不符 | 请求中使用的key与绑定平台不符,例如:开发者申请的是js api的key,却用来调web服务接口 |
二、所以说,是 控制台申请key 这里出问题了;
这里注意申请一个js api的key,替换掉自己申请的web服务的key,
四、替换key,问题解决
AMapLoader.load({
“key”: “Web服务申请的key==> Web端申请的key”,
“plugins”:[“AMap.Geocoder”],
})