解决微信生成小程序二维码scene参数过长的方法

小程序二维码scene参数限定长度为32位字符,但是实际开发中可能有很多的参数需要传递

对于目前32位长度的限制

方案一、中间页 + 短参数

新建一个中间空白跳转页面,每次生成的二维码都是这个页面,

访问这个页面时,将参数中的scene的值,去指定接口获取完整的 带参数的 链接,

然后跳转过去。 适用于一个解决方案中有很多个页面需要生成二维码来跳转;

方案二、短参数(推荐)

二维码指向到特定页面,scene值为短参数,进入页面时先判断是否有scene的值,如果有再请求接口获取完整的参数(json格式),

然后再使用这个参数去调真正的业务接口;

方案三、md5加密

1、后台在生成小程序二维码的地方,使用md5加密生成一个小于等于 32 位的 token ,并将scene 原有的值和token在数据库中,或者redis中存储起来, 然后把这个 token 填入生成小程序码接口的 scene 参数中。

2、小程序在扫描二维码之后,将得到的 scene 中的token提交给后端,后端根据token,新增一个接口 用于解析小程序码获取的 token ,返回给真实的scene参数 返回给前端。

php代码

//入库,再返回
$scene='87309*2*hq_activity*62*live_player*57';
$scene_token = substr(md5($scene), 8, 16);
$scene_data = array(
   'scene' => $scene,
   'token' => $scene_token
   );

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值