小程序踩坑记

小程序踩坑记

1.获取openid
在微信小程序开发工具里面获取是没有问题的,但是一上https正式环境就不能用了,在开发工具里面有设置
解决方案:获取openid交给后台去做,前台调用接口去拿
示例代码:

wx.login({
      success: function (res) {
        wx.request({
          url: util.getPubUrl() + 'applet/getOpenId?js_code=' + res.code + '&grant_type=authorization_code',     //后端接口调用地址,自定义
          method: 'POST',
          dataType: "json",
          header: {
            'content-type': 'x-www-form-urlencoded'
          },
          success(res) {
            that.openid = res.data.body.result.openid;
            that.setData({
              openid: that.openid,
            })
          },
          error(data) {
            wx.showToast({
              title: '获取openid失败,请联系管理人员进行处理',
              icon: 'none',
              duration: 5000
            })
            return;
          }
        });
      }
    });

小程序踩坑记_第1张图片
2.微信支付
后台生成签名算法以及必要参数调起微信支付

wx.requestPayment({
                'timeStamp': result.timeStamp,
                'nonceStr': result.nonceStr,
                'package': result.package1,
                'signType': result.signType,
                'paySign': result.paySign,
                'success': function (res) {
                  console.log(res);
                  console.log("微信支付成功")
                  wx.navigateTo({
                    url: 'payStatus?payStatusFlag=1'
                  })
                },
                'fail': function (res) {
                  console.log("微信支付失败")
                  console.log(that.params)
                  wx.navigateTo({
                    url: 'payStatus?payStatusFlag=0' 
                  })
                }
              })

3.小程序在iOS机型上,iPhone6Plus其他的机型我没有验证,这个问题很坑,使用的小程序自带的navigation-bar,那么问题来了 底部距离屏幕底部总有那么一条缝隙,没有置底,最后发现是因为苹果手机打开热点,连接热点后显示当前*个连接,关掉热点发现并没有这个问题,真坑~

记录下来,方便记忆~

你可能感兴趣的:(Web)