可以直接复制粘贴,只需要改一些东西就可以了


首先在wxml中用微信自带的button开放属性

<button open-type="getUserProfile" type="primary" bindtap="login">授权登录</button>

然后在对应的js中创建一个login方法,因为上面bindtap指向的是login,所以就要创建一个新的方法

login(evt){
//获取微信授权弹框
  wx.getUserProfile({
    desc: 'desc',
    success:(res)=>{
        //打印是否接到微信数据
      console.log(res);
        //wx.login是登录的意思,就是登录方法
      wx.login({
        success: (res1) => {
          //开始打印看是否接到值
          console.log(res1);
          let code=res1.code;
          let nickname=res.userInfo.nickName;
          let avatarUrl=res.userInfo.avatarUrl;
          //wx.request是跳转后台方法
          wx.request({
            //url跳转的地址(后台的接口)
            url: 'url',
            //怎么请求(可以用get也可以用post)
            method:"POST",
            //data传值,从小程序传到后端的数据
            data:{code:code,nickname:nickname,avatarUrl:avatarUrl},
            //成功回调
            success:function(rrr){
                //wx.navigateTo跳转的方法
                wx.navigateTo({
                    //跳转到哪个页面
                  url: '/pages/',
                })
            }
          })
        },
      })
    }
  })
},

然后在后端控制器中写url的接口

function login(Request $request){
        $data=$request->post();
        $code=$data['code'];
        //小程序的id
        $Appid="";
        //小程序的Secret
        $AppSecret="";
        $loginurl="https://baitexiaoyuan.oss-cn-zhangjiakou.aliyuncs.com/updatecrm/php/20231019/jscode2session
        $res=json_decode(file_get_contents($loginurl),true);
        $login=[
          'openid'=>$res['openid'],
          'session_key'=>$res['session_key'],
            //微信昵称
          'nickname'=>$data['nickname'],
        ];
        //直接写表明后面跟条件
        $url=User::where('openid',$login['openid'])->first();        if (isset($url)){
            return [
                'code'=>203,
                'data'=>'',
                'msg'=>'数据已存在'
            ];
        }else{
               //DB里面跟你要添加的表名
            \DB::table('User')->insert($login);
            return [
                'code'=>200,
                'data'=>'',
                'msg'=>'添加成功'
            ];
        }    }

微信授权登录就可以实现了

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部