您的位置:首页 > 其它

QQ第三方登陆回调处理

2017-06-28 14:40 706 查看
下载php版本的sdk,按照例子跟QQ互联的配置,最终能够在回调地址接收到的openid,然后以这个openid做处理,绑定商城账号也好,能自己独立账号登陆也好

1、在调用sdk时候要保存调用前的地址

我是用url传参的方式记录调用前的地址,然后在服务器启动QQ登陆程序时用读取用session 保存下来,

方法有 cookie,session,url sdk自带session_start 要注意与系统自带的session冲突

2、回调处理程序中,

如果要绑定系统自带账号,则此绑定页面要有验证程序(QQ登陆之后只存在两分钟之类的(cookie or session)),不能随便进入此页面

如果已经绑定了,直接读绑定的系统账户登陆就行

3、绑定完成,或者登陆完成,为了用户体验性,需要跳转到登陆前的页面地址

4、涉及代码

点击QQ登陆并

<a href="#" onclick='toQzoneLogin()'>
<img  src="../Connect2.1/example/img/qq_login.png">
</a>


<script type="text/javascript">
var childWindow;
function toQzoneLogin()
{
//alert(document.referrer);
childWindow = window.open("../Connect2.1/example/oauth/index.php?befor_url={php echo $preUrl_1}","TencentLogin","width=450,height=320,menubar=0,scrollbars=1, resizable=1,status=1,titlebar=0,toolbar=0,location=1");
}
//closeChildWindow();
function closeChildWindow()
{
//alert('你好A ');
childWindow.close();
}
</script>


登陆完成后,在回调地址关闭并在之前的窗口刷新网页(也可以是其他的地址,但网页窗口还是原来那个)

die(
'<script>
window.opener.location.href="'.$url.'";
window.close();
</script>');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: