项目接入qq登录,以及微信登录

    项目中需要接入第三方登录这个需求是很常见的,而且也比较简单具体文档在第三方的开放平台上面都有,但是具体操作起来时还是可以遇到很多问题,在这里我拿qq和微信为例;

    这里我通过引入maven依赖


这个依赖是OAuth2.0的依赖包;

     首先必须要在qq以及微信的第三方平台上面注册账号并且创建相应的应用,然后配置好相应的回调接口以及回调域,这里就必须拥有自己的域名,因为需要让qq或者微信方调用我们的接口;创建并配置好应用以后就需要等待审核了,一般qq审核比较快,微信大概是需要2-3天的时间;

    然后记录下来qq以及微信的appid 和 appSecret;接下去就根据文档开始对接调试了;

    这里需要注意:

QQ:

1.注意qq配置的回调域是完整的接口路径,且调用获取code传递的callback参数必须和这个回调接口一模一样,否则会报:

redirect uri is illegal(100010)

通知: QQ互联加强网站应用回调地址校验

微信:

1.注意这里微信设置的回调域是指接口部署网站的域名,切必须是全域名,不包含http或者https协议的,可以带上端口号,也可以不带;

同样获取code传递的callback参数必须是该域名下的路径,否则也会报错;

2.微信通过code获取accessToken的接口返回的数据和qq不一样,多了openid参数,你需要继承OAuth2AccessTokenJsonExtractor类,重写extract方法;提取出openid  并放入对象中,这是为了下一部获取用户信息做准备,因为微信的获取用户信息需要openid,跟qq不一样,没有其他的http接口来获取openid;

你可能感兴趣的:(项目接入qq登录,以及微信登录)