现在做个人网站,通常我们会借助QQ授权来登录网站后台维护或者回复,实现方法是去QQ互联网关注册一个网站应用获取APPID和KEY,然后调用QQ的接口即可。但是假如我们有多个网站,是否需要每个网站都去申请一个应用呢?其实是不需要的。
我们先分析一下,借助QQ登录主要是获取QQ的openid用户名和头像,那么获取这些的前提是什么呢,根据接口可以知道,就是code,以及redict_url,有这两个参数以及appid和key那么我们在任何应用都可以获取qq的openid啦。
所以我的实现方法是,每当一个网站想要登录的时候,就跳转到申请了QQ互联的那个网站去获取code以及redict_url ,这个url是调用后面获取openid的接口时候所需要的参数。然后那个网站获取跳转链接和校验域名是否合法(都是自己的网站才行)吧code和redict_url拼接到跳转链接重定向回去。这样子就可以获取code和redict_url了,完美。