最近看到手Q的扫码支付,发现它可以通过手机浏览器,拉起手Q完成支付,因为之前解析过支付宝的扫码付到全场景,于是开始了以下的操作。

一、打开手Q扫码下单的连接,发现其发生了重定向跳转拉起了支付

二、查看重定向后的页面发起的请求,找到了拉起app的url

mqqapi://forward/url?url_prefix=ahr0chm6ly9texvulnrlbnbhes5jb20vbxfxl3bhes9xcmnvzguuahrtbd9fd3y9mtaynyzfymlkptixodmmdd02ntg4zdizmq==&version=1&src_type=web

看url_prefix的属性,感觉像是RSA等签名之类的。于是详细看了重定向后页面内发起的http请求,发现并没有后端请求返回签名。考虑到本地浏览器RSA签名是不存在的,考虑这个值为Base64编码

三、解码这串值,发现是重定向后url的Base64编码

得到结论,扫码下单以后,可以发起请求获取请求的 location,拿到地址以后,拼接上述url。然后自己包装H5支付或者App支付。

最后修改日期:2019-07-20

作者

留言

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据