RT
1
albertofwb 2018-01-15 15:32:29 +08:00 via Android
这两天正好在做这个功能。首先你可以看看微信的开发文档,搞清楚了流程,就可以模拟浏览器访问微信提供的 url, 拦截 url 跳转就可以抓取到这个 CODE 了。我用 C#的 webview 做的,就几行代码
|
2
Level5 OP @albertofwb 我知道的流程如图所示,如果理解没错的话,用户被引导到请求 code 的链接这个步骤中,是微信内置的浏览器
和微信服务器经过多次 HTTPS 握手交换才返回带 code 的链接重定向到商家页面. 曾经尝试模拟微信内置浏览器到请求链接,改不改 agent 都被识别出来了,都返回 ``` <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0"> </head> <body> <script type="text/javascript"> var ua = navigator.userAgent.toLowerCase(); var isWeixin = ua.indexOf('micromessenger') != -1; var isAndroid = ua.indexOf('android') != -1; var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1); if (!isWeixin) { document.head.innerHTML = '<title>抱歉,出错了</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0"><link rel="stylesheet" type="text/css" href="https://res.wx.qq.com/open/libs/weui/0.4.1/weui.css">'; document.body.innerHTML = '<div class="weui_msg"><div class="weui_icon_area"><i class="weui_icon_info weui_icon_msg"></i></div><div class="weui_text_area"><h4 class="weui_msg_title">请在微信客户端打开链接</h4></div></div>'; } </script> </body> </html> ``` 获取不了带 code 的重定向链接. |
3
weixingna 2020-12-08 14:29:53 +08:00
解决了吗兄弟
|