开发微信公众号,首先要先成为开发者。请自行百度。

在微信公众平台开启接口权限——接口权限—网页服务—地理位置—开启
JSSDK使用步骤

步骤一:绑定域名
先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
备注:登录后可在“开发者中心”查看对应的接口权限。

步骤二:引入JS文件
在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.4.0.js

如需进一步提升服务稳定性,当上述资源不可访问时,可改访问:http://res2.wx.qq.com/open/js/jweixin-1.4.0.js (支持https)。

备注:支持使用 AMD/CMD 标准模块加载方法加载

步骤三:通过config接口注入权限验证配置

wx.config({debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId: '', // 必填,公众号的唯一标识timestamp: , // 必填,生成签名的时间戳nonceStr: '', // 必填,生成签名的随机串signature: '',// 必填,签名jsApiList: [] // 必填,需要使用的JS接口列表
});

这个签名由后台生成

下面是我用vue+vue-resource+微信api获取的用户经度纬度,调用百度地图api转换成地理位置。不转换偏差会很大

 // 获取当前地址(不包括#号后面的东西),微信公众号签名需要,否则会报签名无效,这个地址是传给后台生成签名用的。var isurl=location.href.split('#')[0]// 带当前地址请求后台数据this.$http.get('后台地址',{params:{url:isurl      // 当前地址},},).then((result) => {// 后台返回的签名数据var autograph = result.data;wx.config({debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId: autograph.appId, // 必填,公众号的唯一标识timestamp:autograph.timestamp, // 必填,生成签名的时间戳nonceStr: autograph.nonceStr, // 必填,生成签名的随机串signature: autograph.signature, // 必填,签名jsApiList: [  // 必填,需要使用微信的JS接口列表'getLocation',]});// 保存this,由于下面的代码不是用es6的箭头函数,所以要保存this一下var m=this;// 由于页面一加载就需要获取用户定位,所以要写wx.ready函数,没这需要可不写wx.ready(function(){// 获取用户当前位置经度纬度wx.getLocation({type: 'wgs84',     // 坐标类型 默认wgs84success:function(result){// 11111111111111 返回的数据看下面的截图// 微信返回的用户当前位置经度纬度var res=result;// 带着经度纬度用jsonp方式请求百度接口,转换成百度坐标,不转换百度坐标,偏差会很大。m.$http.jsonp('http://api.map.baidu.com/geoconv/v1/',{params:{coords:res.longitude+','+res.latitude,        // 微信返回用户当前位置经度纬度from:1,        // 当前坐标类型,1-7种类型,详情看http://lbsyun.baidu.com/index.php?title=webapi/guide/changepositionto:5,     // 百度地图返回的坐标类型,5:bd09ll(百度经纬度坐标)6:bd09mc(百度米制经纬度坐标)ak:'3123skdhfiweuyrkhtkjhskf1',   // 百度地图开发者秘钥(我的乱写的),一定要设置一下 Referer白名单},},).then((result1) => {// 22222222222 返回的数据看下面的截图// 转换成百度坐标返回的经度纬度let res=result1;// 传经度纬度,百度地图创建点let pointAdd = new BMap.Point(res.body.result[0].x,res.body.result[0].y);// 地址解析器实例let gc = new BMap.Geocoder();// 调用百度api 将坐标转换为地理位置gc.getLocation(pointAdd, function(rs) {// 33333333333  返回的数据看下面的截图// 转换为地理位置返回的数据console.log(rs)});},(err)=>{alert('err请求失败')})},cancel: function(res) {alert('用户拒绝授权获取地理位置');}});wx.error(function(res) {// 上面wx.config里的debug设置true 这里调用微信jsapi返回的状态// alert("调用微信jsapi返回的状态:" + res.errMsg);});})}),(err) => {alert('err请求失败')}

1111111

222222

3333333

微信公众号获取用户地理位置,转换百度坐标相关推荐

  1. php 微信获取门店列表,【转载】微信公众号获取用户地理位置并列出附近的门店...

    思路分析: 1.在微信公众号内获取用户地理位置 需要js-sdk签名包(关于如何获取文档有介绍) 2.根据获取的地理位置ajax去后台请求,通过sql语句,查询中距离最近的门店(sql语句在网上搜的, ...

  2. java查看附近门店_微信公众号获取用户地理位置并列出附近的门店的示例代码...

    思路分析: 1.在微信公众号内获取用户地理位置 需要js-sdk签名包(关于如何获取文档有介绍) 2.根据获取的地理位置ajax去后台请求,通过sql语句,查询中距离最近的门店(sql语句在网上搜的, ...

  3. python 公众号 关注者位置_微信公众号获取用户地理位置

    很久没搞微信的js-sdk了, 搞了一下午, 刷新页面老是失败, 没想到结合经验给大家展示下获取用户地理位置 第一步:登录微信公众号https://mp.weixin.qq.com 首先先设置最基本的 ...

  4. php微信jssdk获取位置,微信公众号获取用户地理位置

    微信公众开放平台 接口文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140841 获取用户地理位置(需要用户点击同 ...

  5. PHP微信公众号获取用户地理位置,获取用户地理位置

    开通了上报地理位置接口的公众号,用户在关注后进入公众号会话时,会弹框让用户确认是否允许公众号使用其地理位置.弹框只在关注后出现一次,用户以后可以在公众号详情页面进行操作. 第三方在收到地理位置上报信息 ...

  6. PHP微信公众号,获取用户地理位置 定位 经纬度

    <?php //php插件下载地址: https://files.cnblogs.com/files/fan-bk/jssdk_php.rar //建立一个php文件 require_once ...

  7. php微信地理位置,php,微信公众号,获取用户地理位置 定位 经纬度

    //php插件下载地址: https://files.cnblogs.com/files/fan-bk/jssdk_php.rar //建立一个php文件 require_once "jss ...

  8. PHP 公众号获取用户地理位置,微信公众号接口配置,并利用接口获取用户地理位置...

    微信公众号获取用户地理位置有两种方法: 一是在进入微信公众号时获取,然后微信服务器将位置传到我们的服务器. 二是在公众号网页中,通过 JS-SDK 获取. 本文介绍的是第一种方法,第二种方法的部分内容 ...

  9. tp5微信公众号获取用户openid_tp5+微信公众号获取用户基本信息

    获取用户基本信息(UnionID机制) 获取用户基本信息(UnionID机制) 在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯 ...

最新文章

  1. 学python可以做什么产品-学了 Python,能用来做什么?实际应用场景有哪些??...
  2. 贝叶斯定理与贝叶斯估计
  3. android 自动补全方法,Android零基础入门|自动完成文本框AutoCompleteTextView
  4. linux+不同分区mv,mv操作深入浅出
  5. 轻松 Flutter 入门,秒变大前端
  6. 闭包,sync使用细节
  7. Android 数据存储之文件存储小记
  8. Data Lake Analytics: 以SQL方式查询Redis数据
  9. 01let和const
  10. EmEditor Professional 7.02 RC 3
  11. 一个简单的Ajax实例
  12. 求矩阵全部特征值和特征向量的QR方法
  13. Hibernate读书笔记-----Hibernate的关联映射之N-1关联映射
  14. spring catch了异常还是回滚了_干货:Spring 踩坑之@Transactional 神奇失效
  15. wgs84坐标系和国内地图坐标系的转换
  16. yml文件和properties文件区别
  17. android 外文翻译,Android外文文献翻译.doc
  18. Wireshark抓包体验
  19. el-table复选框全部勾选以及勾选回显
  20. Python 用plt做动画

热门文章

  1. IPHONE能否成为圣剑?助苹果斩杀群雄!
  2. 泛微E-Office文件上传漏洞(CNVD-2021-49104)
  3. 如何做好Clickhouse集群的监控覆盖?
  4. c语言中猜字母代码怎么打,C语言代码实现猜数字
  5. 守护安全|AIRIOT城市天然气综合管理解决方案
  6. Vue2使用记录(待续)
  7. html ua ios,iOS 修改默认 UserAgent
  8. 干货!探索单目车辆估计中的中间几何表示
  9. ipad上的人体模型_我拥有哪种iPad模型?
  10. ajax谷歌浏览器提示等待超时,调用谷歌浏览器爬虫,selenium webdriver等设置等待时间和超时时间...