微信连接转发后无法获取地理位置问题解决

微信分享会根据分享的不同,为原始链接拼接如下参数:

朋友圈 from=timeline&isappinstalled=0
微信群 from=groupmessage&isappinstalled=0
好友分享 from=singlemessage&isappinstalled=0

这样导致请求页面获取地理位置wx.getLocation方法失败,可通过wx.config设置debug : ture进行调试,发现究其原因是签名计算错误了。

进入获取签名的方法中,需要在url上添加固定分享后的参数之后再进行签名运行。

StringBuilder url = new StringBuilder(“XXXXX”);
//此处用于分享后多出来的参数加入一起参加签名计算,不然会签名计算错误,导致页面无法获取地理位置
String from = request.getParameter("from");
String isappinstalled = request.getParameter("isappinstalled");

if(StringUtils.isNotBlank(from)){
  url.append("?from="+from+"&isappinstalled="+isappinstalled);
}
		    

问题解决!

时间: 2024-10-11 19:41:23

微信连接转发后无法获取地理位置问题解决的相关文章

微信公众平台开发(85) 获取用户地理位置

本文介绍在微信公众平台上如何使用高级接口开发获取用户地理位置的功能. 一.获取用户地理位置接口 开通了上报地理位置接口的公众号,用户在关注后进入公众号会话时,会弹框让用户确认是否允许公众号使用其地理位置.弹框只在关注后出现一次,用户以后可以在公众号详情页面进行操作. 用户同意上报地理位置后,每次进入公众号会话时,都会在进入时上报地理位置,上报地理位置以推送XML数据包到开发者填写的URL来实现. 推送XML数据包示例: <xml> <ToUserName><![CDATA[t

微信公众平台网页开发实战--3.利用JSSDK在网页中获取地理位置(HTML5+jQuery)

复制一份JSSDK环境,创建一份index.html文件,结构如图7.1所示. 图7.1  7.1节文件结构 在location.js中,封装“getLocation”接口,如下: 01 wxJSSDK.location = function(locationApi){ 02 if(wxJSSDK.isReady){ //wxJSSDK.isReady 查看微信JSSDK是否初始化完毕 03 if(locationApi){ 04 locationApi.getLocation && wx

【原创】微信公众号与HTML 5混合模式揭秘——JSSDK获取地理位置

微信公众号与HTML 5混合模式揭秘1——如何部署JSSDK 微信公众号与HTML 5混合模式揭秘2——分享手机相册中照片 JSSDK为开发者提供了两个位置API服务:获取地理位置和使用微信内置地图查看位置. 下面还是沿用以往的实战演示方法.先创建一份location.js文件,为“wxJSSDK”增加“location”的相关API,代码如下: 01 wxJSSDK.location= function(locationApi){ 02 if(wxJSSDK.isReady){//wxJSSD

微信js获取地理位置

1.绑定域名 先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”. 备注:登录后可在“开发者中心”查看对应的接口权限. 2.引入js文件 <script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script> <script type="text/javascript" src=

微信小程序正确的异步request请求,根据经纬度获取地理位置信息

微信小程序的所有request请求都是异步的,不支持同步.但是在请求时可能会耗费一定时间,这样的话在获取返回数据时可能方法还没有执行完就已经进行赋值操作了.我遇到的就是拿到的数据为undefined. 解决办法,使用回调函数,等操作完成后再更改原来的值. 贴代码:(这是根据经纬度获取地理位置的一个方法) function GetAddress(latitude, longtitude, callback, errorCallback) { var geturl = 'https://api.ma

C3P0配置优化,C3P0连接数占满后无法获取连接

场景:项目遇到持续高并发后,连接池一直无法获取到连接,检查后,发现连接池配置有点问题,做以下修改后正常: 配置修改: 1.breakAfterAcquireFailure=false,为true会导致连接池占满后不提供服务.所以必须为false 2.acquireRetryAttempts=10,获取连接失败时重试10次,默认重试30次,减少重试次数. 3.idleConnectionTestPeriod=30,每30秒检查一次空闲连接,加快释放连接. 4.maxIdleTime=10,连接10

微信分享、获取地理位置封装

/* @ wechat({ @ shareDatas : { @ title: 'string',//分享的标题 @ desc: 'string',//分享的描述 @ shareUrl: 'url',//分享出去的链接,为空则分享出去当前页的链接 @ imgUrl: 'url',//分享的图标链接,为空则图标为银巴克LOGO @ goToUrl: 'url',//分享后跳转的链接,为空则不跳转 @ from: 'url'//统计分享来源的ajax接口url,无则留空 @ }, @ getLoca

微信js-sdk开发获取签名和获取地理位置接口示例

### 微信js-sdk开发获取签名和获取地理位置接口示例 前言:在做微信公众号开发时需要获取用户的地理位置信息,之前通过高德或者百度.腾讯等地图的api时发现经常获取不到,毕竟第三方的东西,后来改为采用微信内置的js-sdk中的获取地理位置接口,在这主要记录下签名的获取(麻烦点)和一个获取地理位置的例子. 准备工作: 微信测试号appid和appsecret 获取地址:微信测试账号获取 在测试账号里先填写接口配置信息和js接口安全域名(这个是必须的) 示例:页面中需要点击图标获取地理位置信息

C#开发微信门户及应用(14)-在微信菜单中采用重定向获取用户数据

我曾经在系列文章中的<C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍>中介绍了微信菜单里面的重定向操作,通过这个重定向操作,我们可以获取一个code值,然后获取用户的openID,进而就能获取到更多的用户信息,这个在会员信息的场景里面用的很多,本篇介绍在网站中迅速配置这样的菜单链接,并介绍如何在后台获取相关的用户信息,实现页面数据个性化的展现操作. 我们知道,微信的自定义菜单分为两大类,分别对应Click类型和View类型的,而重定向属于View类型的一种,如下所示. 1.微信重