企业号如何调用JS接口(以调用地理位置接口为例)

企业号如何调用JS接口(以调用地理位置接口为例)_第1张图片

               这是测试微信DEMO的流程图。

               按照官方文档建立好微信连接与微信接口配置后,即可调用接口。

               1.通过配置来加入需要调用的接口,这里加入了获取地理位置的接口。

 wx.config({
                debug: false,
                appId: appId,
                timestamp: timestamp,
                nonceStr: nonceStr,
                signature: signature,
                jsApiList: [
                    'openLocation',
                    'getLocation'
                ]
            });
                2.我的目标是通过微信JS接口获取地位位置的经纬度,然后通过腾讯地图API中根据经纬度转换成详细地址的方法进行转换从而将地址显示出来。

 wx.getLocation({
                type: 'gcj02',
                success: function (res) {
                    //成功后拿到经纬度
                    var lat = res.latitude; // 纬度,浮点数,范围为90 ~ -90
                    var lng = res.longitude // 经度,浮点数,范围为180 ~ -180。
                    var latLng = new qq.maps.LatLng(lat, lng);
                    //1.创建地址解析类对象,并且写好检索成功后的回调函数
                    geocoder = new qq.maps.Geocoder({
                        complete: function (result) {
                            //拿到市县街道,但addressComponents.streetnumber有问题拿不到
                            signin_info = result.detail.addressComponents.province + result.detail.addressComponents.city + result.detail.addressComponents.district + result.detail.addressComponents.street;
                            attendance_index.save_signin(signin_info_time,signin_info);

                        }
                    })
                    geocoder.getAddress(latLng);
                },
                cancel: function (res) {
                    alert('用户拒绝授权获取地理位置');
                }
            })
             3.腾讯地图API有一个BUG,不知道是我搞错的问题还是真BUG, addressComponents.streetnumber是拿不到的!所以如果像我这样分开取地址的话最后的街道部分是取不到的!但是,API中有一个方法直接把最详细的地址返回回来,但是根本不想要这么长啊!

             4.signin_info就是最后结果。


         

你可能感兴趣的:(企业号如何调用JS接口(以调用地理位置接口为例))