微信小程序 - 定位功能

那儿_并不远(奇哥作品)

一月9号微信小程序的推出,相信应该会给大家带来了这样或者那样的感受,我就不过多的表达我对小程序的看法了,我已经开始了小程序的学习。
在使用小程序的时候我发现很多小程序都实现了定位功能,比如美团,饿了么等,所以就去看了一下小程序的开发文档,发现文档中没有关于逆地址解析,所以在网上查了查资料,以下是我的学习过程,记录下来。

(1) 查看微信小程序文档

API说明

返回参数说明及实例代码

大家可以从我截图中可以看到,API中的返回值有纬度和经度,所以我们接下来就是要用到纬度和经度逆地址解析出地址的一些信息。

(2)注册腾讯地图开放平台

腾讯地图开放平台

注册完之后选择WebServiceAPI

WebServiceAPI

进入WebServiceAPI之后大家就可以看到逆地址解析了,然后阅读一下腾讯为我们提供的开放接口,我们可以直接用GET请求获取地址的具体信息了,

  • http://apis.map.qq.com/ws/geocoder/v1/?location=39.984154,116.307490&key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77&get_poi=1(这是实例URL)

腾讯具体给我们的返回值大家可以注册一下进去看一看,很具体的。我直接上js代码

getCityNameOFLocation: function() {
    
    var that = this;
    wx.getLocation({
      type: 'wgs84', // 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标
      success: function(res){
        console.log("定位成功");
        var locationString = res.latitude + "," + res.longitude;
        wx.request({
          url: 'http://apis.map.qq.com/ws/geocoder/v1/?l&get_poi=1',
          data: {
            "key" : "YLFBZ-WHAWI-ZXUGH-53Q65-TOJ7E-ADBNQ",
            "location" : locationString
          },
          method: 'GET',
          // header: {}, 
          success: function(res){
            // success
            console.log("请求成功");
            console.log("请求数据:" + res.data.result.address);
          },
          fail: function() {
            // fail
            console.log("请求失败");
          },
          complete: function() {
            // complete
            console.log("请求完成");
          }
        })
      },
      fail: function() {
        // fail
        console.log("定位失败");
      },
      complete: function() {
        // complete
        console.log("定位完成");
      }
    })
  }
控制台输出结果

大家可以看到我的请求结果,具体的值就不一一输出了,可以亲自试一试。

总结

微信小程序开发会遇到很多坑,就跟刚开始学习Swift一样,相信小程序和苹果的Swift会更加完善。想一起学习的小程序的同学们可以关注我,大家一起沟通交流一下,共同进步。
这是我朋友的微信号,大家如果想继续了解小程序的话可以加他,然后他会把你拉到小程序交流群,共同成长。(微信:1519705183)

你可能感兴趣的:(微信小程序 - 定位功能)