第三方平台账号登入流程总结(附新浪微博一键登入代码)
最近了解了一下第三方登入的API,包括新浪微博、腾讯微博、人人网,因为QQ的API暂时还没成功实现,所以在这里还希望有成功实现的人能给我点拨下,或者提供demo参考。
下面废话不多说,先上一张流程图,经过我的实验,大致所有的流程都是如此:
有人会问为什么第三方登入成功后还要绑定账号,其实也可以不绑定。
如果你的站点本身就没有会员功能,你可以把验证成功后返回的UID当作用户账号,返回回来后判断该UID是否已存在于数据库内,如果有则自动登入,如果没有后台会帮你创建好一条记录并自动登入,这样就实现了一个无需注册,完全使用某第三方网站账号登入的功能。
上图因为考虑到现有的站点已经有会员功能,需要整合一个第三方网站的账号登入功能,所以需要一个绑定的过程。
关于API就不多介绍了,下面提供一个新浪微博的账号登入demo,可以让大家更明白的了解大致流程。
// 弹出登入窗口 WB2.login(function(){ // 验证是否登入成功 if(WB2.checkLogin()){ // api 入口 WB2.anyWhere(function(W){ // 调用 account/get_uid 接口,获取用户信息 W.parseCMD('/account/get_uid.json', function(oResult, bStatus){ if(bStatus){ // 本地验证 uid 是否存在,如果存在则自动登入绑定账户,不存在则不做任何操作 $.ajax({ type: 'POST', url: 'index.ajax.php', data: 'ac=checkReg&uid='+oResult.uid+'&type=1', success: function(msg){ if(msg == 1){ // 已登入,刷新页面 location.reload(); }else{ // 未绑定账号,进行绑定或者注册 // do something } } }); } }, {}, { method : 'get', cache_time : 30 }); }); } });
最后回到本文第一句,关于QQ登入的实现,还没有做出来,如果有人知道,希望能在下面留言告诉我,跪谢~
新博客地址
hooray.github.io
hooray.github.io