菊花码接口B的问题
发布于 6 年前 作者 cuijing 7890 次浏览 来自 问答

接口B的参数scene如果是 partJobId=1111&shareUserId=2222。我怎么取到partJobId或者shareUserId


以前是只有scene 所以菊花码填写的是

如果我要拿到partJobId或者shareUserId的值该怎么拿?有做过这个的老哥吗?麻烦来回答下。

7 回复

因为scene有字符串长度限制。所以更改为pid和sid了。

为啥生成小程序码api的参数中不加新的参数,接受对象or数组,然后再生命钩子函数中直接通过option.query 取出来。自己分割的话scene=123&456&789&xxx 很容易造成分割出来的参数key,value 对应不上。这的协商好(生成微二维码和获取参数人员之间)。。。。

如果有N个参数岂不是分割比较麻烦?一个小程序还好,很多小程序不是造成每个小程序都要分割scene????钩子函数中的option.query 又有什么用?

var getQueryString = new Object()
var strs = decodeURIComponent(options.scene).split('&') //以&分割
//取得全部并赋值
for (var i = 0; i < strs.length; i++) {
  getQueryString[strs[i].split('=')[0]] = unescape(strs[i].split('=')[1])
}
this.setData({
  partJobId: getQueryString['pid'] ? getQueryString['pid'] : '',
  shareUserId: getQueryString['sid'] ? getQueryString['sid'] : ''
})

么办法。看官方修改长度不。我们这些 只能找各种方法解决。最近生成菊花码遇到个问题 偶现 生成的码是空白。

scene=from/*201963/*preview/*1

if (scene){
  var arr = scene.split("/*");
  for (var a = 0; a < arr.length;a+=2) {
    QR_data[arr[a]] = arr[a+1]
    console.log(arr,QR_data,a)
  }  
}

scene=from/*201963/*preview/*1

我是用/*做分割,然后解析的。基数做键,偶数做值。

这个自己做字符串分割下就好

回到顶部