微信扫码带参跳转小程序
发布于 5 年前 作者 taomin 1897 次浏览 来自 问答

 在微信公众平台“开发设置”中,我们添加了一个“扫普通链接二维码打开小程序”,并且已发布,后台生成一个二维码之后,解析出来是需要带参数的,比如 https://XXX.com/pages/index/i… 等,参数大概8个左右,小程序发布以后,我们扫码后,在日志里面发现获取的参数都未undefined,
前台获取代码写在onLoad中:

onLoad: function(options) {
        let that = this;
        let id = options.id;
        let num = options.num;
        let lang = options.lang;
            ·
            ·
            ·
        wx.request({
            url: app.data.WebRoot + "xxx",
            data:{
                id:id,
                num:num,
                lang:lang
            },
            success: function(res) {
                  
            }
        });
  
}

然后怕是要转码,又改成

onLoad: function(options) {
        let that = this;
        let id = decodeURIComponent (options.id);
        let num = decodeURIComponent (options.num);
        let lang = decodeURIComponent (options.lang);
            ·
            ·
            ·
        wx.request({
            url: app.data.WebRoot + "xxx",
            data:{
                id:id,
                num:num,
                lang:lang
            },
            success: function(res) {
                  
            }
        });
  
}

用decodeURIComponent转码,然而用户扫码出来所有参数还是undefined

1 回复

二维码内容获取

在小程序后台配置二维码跳转小程序规则之后即可使用微信(6.5.6及其以上客户端版本)扫码打开小程序。

二维码链接内容会以参数q的形式带给页面,在onLoad事件中提取"q"参数并自行UrlDecode一次,即可获取原二维码的完整内容。

回到顶部