[Grails] grails利用java实现了网站QQ登陆绑定

vottot 2011-04-20
         最近QQ开放登陆接口了,只要申请就可以直接使用。申请地址:http://opensns.qq.com/
          于是在自己的项目中集成了QQ登陆绑定。

          效果:http://www.djdkx.com/       AD:这是一个笑话分享平台,分享开心,大家都开心。

          因为腾讯没有出SDK,目前只有一个获取用户的接口。

          于是修改了网友提供的SDK。

          功能思路:

1.在现有的用户系统上增加一个表,提供第三方网站的账户和现有账户绑定,grails实现方式,其它语言同理。

class Connect {
    Member member
    String openID
    String connectWeb
    static constraints = {
        member()
        openID(maxSize: 200)
        connectWeb(maxSize: 50)
    }
    static mapping = {
        openID index: 'OpenID_Idx,OpenIDAndConnectWeb_Idx'
        connectWeb index: 'ConnectWeb_Idx,OpenIDAndConnectWeb_Idx'
    }
}
2.使用sdk实现QQ登陆,登陆成功后跳转回站内,站内判断:

已经绑定的用户直接登陆成功。

没有绑定的系统提示直接登陆(在用户表中添加新用户,在关系表中添加关系)。

没有绑定的账户提示与现有账户绑定(查找用户表的数据,在关系表中添加关系)。

3.绑定成功后直接登陆。(如果第二步已经登陆将不会执行第三步)



核心源码下载:http://code.google.com/p/gudian/downloads/list  文件名称:qqbind.rar

该源码修改于网友写的腾讯微博SDK,该属于谁的版权就是谁的,此处不作过多说明。

说明:

src 所有的qq登陆核心源码

lib 项目里面使用到的jar

ConnectController.groovy 类似java里面的servlet

Connect.groovy 数据对象

com.qq.sns.config.Config 配置文件,设置appKey和appSecret



由于最近时间比较紧张,没有进行整理,只是把项目中的应用提取出来,jsp开发qq登陆绑定的话可以直接使用src里面的源代码,只是模型层根据参考自行进行修改。如果有什么问题,欢迎和我沟通。请发邮件:vottot@qq.com。不要使用站内短信。


Global site tag (gtag.js) - Google Analytics