起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1923|回复: 4

[处理中3] 微信公众号支付不能在安卓上用了【问题自己解决】

[复制链接]

64

主题

471

帖子

1127

积分

金牌会员

Rank: 6Rank: 6

积分
1127
发表于 2016-7-28 18:26:55 | 显示全部楼层 |阅读模式
本帖最后由 qldsrx 于 2016-7-30 07:13 编辑

有同样问题的人都来看看,今天突然不能用了,原因是微信的授权URL误判,将#后面的斜杠作为了路径分隔符,URL授权路径改变了。但起步的框架都是拿#后面的斜杠作为content子路径的分隔符或参数的分隔符,实际不应该算在URL的路径中。

64

主题

471

帖子

1127

积分

金牌会员

Rank: 6Rank: 6

积分
1127
 楼主| 发表于 2016-7-30 07:13:21 | 显示全部楼层
貌似我很幸运,得以发现微信团队的BUG,但无从申报,他们团队太大了,没人处理BUG。
现在我这样解决了,在页面人为添加了问号参数,由于井号参数是在问号参数的后面的,因此也就不会被误判了,但如果去掉了问号参数,授权URL就误判了,从规范上讲,这肯定是微信的BUG,但从解决方法来说,可以自己添加无用的问号参数来解决。
另外为啥说我很幸运呢?因为一般人OAUTH都是指向自己的.w页面,然后支付,这样自然是有问号参数的,但我没这样,因为那样做的处理有个BUG,那就是如果这个页面被分享出去,也就带了一个过期的CODE参数,后续流程会出错,于是我让OAUTH重定向到了我的baasServer的URL上面,先后台处理,然后再重定向到首页,于是URL里面不存在任何的问号参数。
回复 支持 反对

使用道具 举报

发表于 2017-3-9 12:14:44 | 显示全部楼层
qldsrx 发表于 2016-7-30 07:13
貌似我很幸运,得以发现微信团队的BUG,但无从申报,他们团队太大了,没人处理BUG。
现在我这样解决了,在 ...

你试试仿淘宝案例的分享是否正常??
URL处理一下
你再试试参考:/UI2/demo/taobao/detail.js
使用 Utils.getShareUrl() 获取URL分享试试
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

64

主题

471

帖子

1127

积分

金牌会员

Rank: 6Rank: 6

积分
1127
 楼主| 发表于 2017-3-15 20:00:22 | 显示全部楼层
liangyongfei 发表于 2017-3-9 12:14
你试试仿淘宝案例的分享是否正常??
URL处理一下
你再试试参考:/UI2/demo/taobao/detail.js

其实问题这是url后面缺少问号参数引起的BUG,比如你说的淘宝案例,在url后面本身就存在问号参数,所以不会被误判,我用OAUTH重定向后,去掉了所有问号参数,只剩下井号后面的参数了,这才重现了这种BUG,你不妨照着我的思路试试。既然知道了BUG如何引起的,那就有办法避开,所以我也不纠结了,我随便给个问号参数不就好了嘛
回复 支持 反对

使用道具 举报

发表于 2017-3-16 09:56:07 | 显示全部楼层
qldsrx 发表于 2017-3-15 20:00
其实问题这是url后面缺少问号参数引起的BUG,比如你说的淘宝案例,在url后面本身就存在问号参数,所以不 ...

有用户反应是井号 会被 微信截断!导致URL不完整!!
不管怎样!我们这边提供的解决方案是 Utils.getShareUrl()  就能获取到当前正确的rul ,这个URL是经过处理的,就可以正常分享的!!你试试可行否吧!如果不行再继续改进!!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-25 06:06 , Processed in 0.108765 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表