1.  效果展示

2.  登陆流程时序

3.  具体实例

  • 小程序调用wx.login() 获取临时登陆凭证code(临时登陆凭证code只能使用一次),并传回开发者服务器.
  • 登陆凭证code传回字开发者服务器调用code2Session接口,凭code换取微信openid,session_key等.
  • //小程序端
    wx.login({
        success: function(res){
            console.log(res.code)//控制台输出临时凭证code
            wx.request({
                //将临时凭证code传回至开发者服务器中
                url:'开发者服务器/get_openid.php?code=' + res.code,
                success: function(result){
                    console.log(result.data.openid) //控制台输出openid
                    consloe.log(result.data.session_key) //控制台输入sessin_key
                }
            })
        }
    })
  • //开发者服务器端
    <?php
        header('Content-type: text/html; charset=utf-8');
        $appid = ''; //微信小程序id
        $secret = ''; //小程序密匙
        $code=$_GET['code'];
        $url = 'https://api.weixin.qq.com/sns/jscode2session?appid='.$appid.'&secret='.$secret.'&js_code='.$code.'&grant_type=authorization_code';
        $info = file_get_contents($url);
        $json = son_decode($info); //对数据进行json解码
        $arr = get_object_vars($json);
        $openid = $arr['openid']; //获取openid
        $session_key = $arr['session_key']; //获取session_key
        
        //传回至小程序端
        $array = [
            'openid' => $openid,
            'session_key' => $session_key
        ];
        $data = json_encode($array); // json 编码
        echo $data;
    ?>


发表评论

电子邮件地址不会被公开。 必填项已用*标注