微信小程序获取经纬度对应的地理位置名称

更新日期: 2020-08-04 阅读次数: 290 字数: 342 分类: 微信小程序

为了方便用户在小程序页面中一目了然的知道自己当前位置,需要将获取到的经纬度转换成可读的位置描述。例如:烟台市开发区万科城。

位置信息 API 选型

  1. 高德地图接口

https://lbs.amap.com/api/webservice/guide/api/georegeo/

  1. 腾讯地图

https://lbs.qq.com/miniProgram/jsSdk/jsSdkGuide/jsSdkOverview

API 接口调用配额

  • 腾讯地图个人版每天1万次;企业版未知
  • 高德地图企业版 300 万次/天

高德地图 API 示例

wx.getLocation({
  type: 'gcj02',
  success: res => {
    this.setData({
      lat: res.latitude.toString(),
      lng: res.longitude.toString(),
    })
  },
  complete: () => {
    // 位置对应的名称
    wx.request({
      url: `https://restapi.amap.com/v3/geocode/regeo`,
      method: 'GET',
      data: {
        key: "你申请的高德地图 WEB API key",
        location: this.data.lng + "," + this.data.lat,
        extensions: "all",  // 返回基本地址信息、附近 POI 内容、道路信息以及道路交叉口信息
      },
      header: {
        'content-type': 'application/json'
      },
      success: res => {
        this.setData({
          address: res.data.regeocode.pois[0].name
        })
      }
    })
  }
});

本地调试注意事项

在微信小程序开发工具上,获取的经纬度是不精确的,这会导致得到的位置名称也不准。

最好在真机上看效果。

高德地图接口的贴心之处

通过设置 POI 列表,可以选择返回哪些类型的地址位置信息。

例如,想返回附近的银行、加油站、公司、工厂等。这样就有了更大的想象空间。

领取阿里云/腾讯云服务器优惠券

关于作者

我是来自山东烟台的一名开发者,喜欢瞎折腾,顺便记记笔记。有敢兴趣的话题,欢迎加微信 zhongwei 聊聊, 查看更多联系方式。 白天写程序,晚上哄熊孩子,可能回复有点慢,见谅。同时也欢迎关注我的微信公众号“大象工具”: 大象工具微信公众号

相关文章

爱评论不评论

近期节日

2020年10月01日 国庆节
2020年10月01日 中秋节
2020年10月04日 世界动物日
2020年10月08日 寒露
2020年10月09日 世界邮政日
2020年10月10日 辛亥革命纪念日
2020年10月13日 中国少年先锋队诞辰日
2020年10月14日 世界标准日
2020年10月15日 国际盲人节
2020年10月16日 世界粮食日
2020年10月17日 国际消除贫困日
2020年10月22日 世界传统医药日
查看更多节日