1. 程式人生 > 其它 >微信網站應用掃碼登陸

微信網站應用掃碼登陸

微信網站應用掃碼登陸

1、js二維碼code

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>微信掃碼登陸</title>
    <script type="text/javascript" src="/app/static/wxLogin.js"></script>
</head>
<body>
    <div id="login_container">
    </div>
    <script type="text/javascript">
        var obj = new WxLogin({
            self_redirect:true,
            id:"login_container", 
            appid: "", 
            scope: "snsapi_login", 
            redirect_uri: "{$redirect_uri}",
            state: "",
            style: "black",
            href: "LmltcG93ZXJCb3ggLnFyY29kZSB7d2lkdGg6IDIwMHB4O30KLmltcG93ZXJCb3ggLnRpdGxlIHtkaXNwbGF5OiBub25lO30KLmltcG93ZXJCb3ggLmluZm8ge3dpZHRoOiAyMDBweDt9Ci5zdGF0dXNfaWNvbiB7ZGlzcGxheTogbm9uZX0KLmltcG93ZXJCb3ggLnN0YXR1cyB7dGV4dC1hbGlnbjogY2VudGVyO30g"
            });
    </script>
</body>
</html>

2、接受code,生成openid

//獲取微信二維碼掃碼登陸
		$tokens="https://api.weixin.qq.com/sns/oauth2/access_token?appid=&secret=&code={$code}&grant_type=authorization_code";
		$this->oLogAct->add("微信掃碼登陸獲取二維碼token地址" . json_encode($tokens));
		$tokens=$this->setGet($tokens);
		$this->oLogAct->add("微信掃碼登陸獲取二維碼token資訊" . json_encode($tokens));
		if (empty($tokens)) {
		   return self::setMsg(500, '登入失敗!');
		}
		
		$openid=base64_encode($this->encryptData($tokens['openid']));