php微信小程序getwxacodeunlimit动态生成小程序码且生成图片放置服务器上

微信小程序js调取接口:

  wx.request({
        url: app.globalData.apiUrl + '/app/member_createcode',
        data: {
          token: wx.getStorageSync('token') || '',
          scene: "shareuser="+that.data.uid,
          page: "pages/index/index"
        },
        header: {
          'content-type': 'application/json'
        },
        method: 'POST',
        success: function (res) {
          wx.hideLoading();
          if(res.data.errorCode == 99999){
             that.setData({
                sharecode: res.data.data.pathimg,
              })
          }else{
            // 生成分享码失败,关闭弹出层
            wx.showToast({
              title: '加载失败,请重试',
              icon: 'none',
              duration: 500,
            })
            return false;
          }

        },
        fail: function (error) {
          console.log(error)
        } 
        
      })  

 

PHP后端处理:

逻辑:判断图片是否存在,存在直接返回图片地址;不存在调取生成小程序码接口且将图片放置服务器上,返回图片地址;

 public function createcode()
    {
        $uid = Token::getCurrentUid();
        header('content-Type: image/png');

        $path = 'uploads/sharecode/'.$uid.'.png';

        // 判断图片是否存在
        if(@fopen($path, 'r' ) )
        {
            response(['path' => $path, 'pathimg' =>C('xcx_yuming').'/'.$path,'from'=>'1']);
        }else{
            $mini_config = C('mini_c');
            $url = sprintf(C('access_token_url'), $mini_config['mini_app_id'], $mini_config['mini_app_secret']);
            $wx_data = httpGet($url);

            $wx_data = json_decode($wx_data,true);
            $access_token = $wx_data['access_token'];

            $request = Request::instance();
            $data['scene'] =  $request->param('scene');
            $data['page'] =  $request->param('page');

            $codeurl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=".$access_token;

            $codeinfo = httpPost($codeurl,json_encode($data)); //64位编码
            file_put_contents($path, $codeinfo);
            response(['path' => $path, 'pathimg' =>C('xcx_yuming').'/'.$path]);
        }
    }

说明:

   1.  $path = 'uploads/sharecode/'.$uid.'.png';   //图片地址

   2. C('xcx_yuming')   //小程序域名

   3. 先获取token,再拿token获取getwxacodeunlimit返回的图片;官网文档说明:获取小程序码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】 适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】 适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】 适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】 适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】 适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】适合专科和本科毕业生的【原创论文】【已降重】【万字】【本科】【专科】【毕业论文】【预览目录】【预览正文】

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值