wxacode.getUnlimited获取的二维码正式环境无法显示
发布于 6 年前 作者 mingli 9635 次浏览 来自 问答
  • 代码

Page({

data: {

token: ‘’,

    imgUrl: ‘’, // 小程序二维码

}

// 获取token

  getToken() {

    let that = this;

    wx.request({

      url: ‘https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你自己的appid&secret=自己的secret’,  // 具体传参见文档

      success: res => {

        console.log(res)

        that.setData({

          token: res.data.access_token

        })

        that.getUnlimited(res.data.access_token)

      }

    })

  },

  getUnlimited(id) {

    const that = this;

    wx.request({

      url: 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=’ + id, // 切记tooken连接在地址后面,不要放在data中,否则会导致报错,token过期

      data: {

        scene: wx.getStorageSync(‘thisCode’),

        page: ‘pages/index/index’,

        width: 280,

        is_hyaline: true

      },

      header: {

        ‘content-type’: ‘application/json;charset=utf-8’

      },

      responseType: ‘arraybuffer’,  // 很重要一定要传

      method: ‘POST’,  // 一定要用POST,用get报错

      success: res => {  // res中data这时看是个空数组,但经过下面解析就会出现数据

        let data = wx.arrayBufferToBase64(res.data)

        that.setData({

          imgUrl: ‘data:image/PNG;base64,’ + data  // 一定不要漏掉

        })

      }

    })

  }

})

  • 预期表现

在开发者工具上可以二维码获取成功,在体验版上只有打开调试才会成功,正式环境小程序二维码不显示

2 回复

request合法域名的问题

各位大哥,帮忙看看,谢谢

回到顶部