搜索

首页  >  问答  >  正文

javascript - vue引入微信jssdk 配置在哪个生命周期调取接口配置?

在ios中会报 invalid signature的错误,安卓就没事, 微信开发者工具里面也没事
在create beforecreate mounted中都尝试做wx.ready但是总是报invalid signature。 关闭这个alert之后微信的接口可以用,如果encodeURIcomponent在调取后台接口的时候就直接报错了,后台接口日志在前端没有encode的时候参数也是encode之后的样式。请教各位 这是什么原因导致的呢。

为情所困为情所困2735 天前1086

全部回复(1)我来回复

  • 怪我咯

    怪我咯2017-06-28 09:26:43

    关于微信签名错误,请参考官方文档,具体问题具体分析,按步骤仔细排查.
    然后关于初始化微信,如单组件使用在mounted中声明更加,也可在main.js中全局声明.
    贴上我抽出的一般性代码:

    export default {
      init() {
          let that = this;
          Service.wxConfig({//调用服务端获取签名配置
            url: location.href.split('#')[0]
          }, result => {
            if (result.success) {
              that.weixinConfig(result.data);
            }
          });
        },
    
        weixinConfig(data) {
          wx.config({
            debug: false,
            appId: data.appId,
            timestamp: data.timestamp,
            nonceStr: data.nonceStr,
            signature: data.signature,
            jsApiList: [
              'onMenuShareTimeline',
              'onMenuShareAppMessage',
              'showOptionMenu',
              'hideOptionMenu',
              'showMenuItems',
              'hideMenuItems',
              'chooseImage',
              'previewImage',
              'uploadImage',
              'chooseWXPay'
            ]
          });
        }
    }

    回复
    0
  • 取消回复