各种尝试:
回调的url + 携带的参数整体进行urlEncode编码,但是不行。
现象:在微信app中复制链接的时候,可以看到code,但是看不到携带的参数(一个参数都没有)先将携带的参数整体进行urlEncode编码,再将编码后的参数和回调的url再次编码。但是不行
现象:在微信app中复制链接的时候,看不到code,只能看到一堆加密后的url + 参数
先将携带的参数分别进行urlEncode编码,再讲编码后的参数与回调的url整体编码,但是不行
现象:在微信app中复制链接的时候,看不到code,只能看到一堆加密后的url + 参数
如果都不行的话,那就换个思路
像 https://aaa.bbb.com/xxx/xxx/a.1_b.2 => a=1 b=2
还有个思路,利用state参数,请求授权前
以php为例,将我们的参数存在以$state为key的$_SESSION里
session_start()
$state = time().rand(1000, 9999); //时间戳拼接随机4位数
$_SESSION[$state] = [‘a’=>1, ‘b’=>2];
$redirect_uri = ‘https://aaa.bbb.com/xxx/xxx’;
$auth_url = ‘https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=’.urlencode($redirect_uri).’&response_type=code&scope=SCOPE&state=’.$state.’#wechat_redirect’;
等到回调里获取到返回的state值,在从$_SESSION里取key为state值的参数,进行下一步的业务