小程序码B接口参数无效
根据文档所述
用户扫描该码进入小程序后,将统一打开首页,开发者需在首页根据获取的码中 scene 字段的值,再做处理逻辑。使用如下代码可以获取到二维码中的 scene 字段的值,调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx 进行模拟
我通过以下代码获取小程序码并保存为图片
$post = array ( scene=> $type . "$" . $id , width=>500 ); $qr = $this ->curl_request( "http://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" . $arr ->access_token,json_encode( $post )); |
并通过以下代码进行跳转
var scene = options.scene; if (scene) { this .goQrcode(scene); } |
goQrcode: function (scene) { var scene_arr = scene.split( "$" ); //scene_arr[0]==1 类别为1则为商铺,暂不需要判断 wx.navigateTo({ url: '../shangpudetail/shangpudetail?id=' + scene_arr[1], }) }, |
请注意,在本地测试时,我根据文档要求进行测试,如图
这时进入小程序时会自动跳转到相应的页面,也就是说,这段程序是有效的
但用微信扫码后只能进入程序首页。
请问这是为什么?
补充一个小程序码,就是上面生成并保存在我服务器上的。
4 回复
您好,这个问题怎么解决的,我现在这个问题好纠结啊
var scene = decodeURIComponent (options.scene); // 535;// this .setData({ scene: scene }); if (scene != undefined && scene != 'undefined' ) { if (scene.indexOf( "_" ) == - 1 ) { wx.redirectTo({ url: '../card/share/share?ownerId=' + scene, }) } else { var scenes = scene.split( "_" ); var ownerId = scenes[ 0 ]; wx.redirectTo({ url: '../register/register?tuijianrenId=' + ownerId, }) } } |
小程序码的参数:scene=72_zhcue