貌似腾讯修改了协议,现在申请应用的时候回调地址不能为裸域了,直接使用裸域会出现redirect uri is illegal(100010) 的错误。
可到https://dev.fatesinger.com 体验
实现要求
需要实名制验证开发者信息
网站需要备案才可以通过申请
实现方法
到http://connect.qq.com 创建应用,填写基本信息,回调地址填写http://你的域名/auth-qq.php
repo中是多个oauth方法结合在一起的。
文件下载方法
编辑auth-qq.php
,然后填写你的appid
和appsecret
,然后把该文件上传到你的网站根目录,就是和wp-config.php
同一目录,注意不要上传到主题目录下。
然后访问http://你的域名/auth-qq.php?showurl会显示授权链接,复制链接,然后在你调用的地方使用即可。
使用window.open
方式打开授权后将刷新原页面
可直接使用get_user_meta($userid,'qq_avatar',true)
调用QQ头像
或者使用repo functions.php
中的hook来调用
注意事项
代码并没有做CSRF的处理,谨慎使用。
回调地址填写http://你的域名/auth-qq.php,这个填了,但是还是提示以下问题
redirect uri is illegal(100010)
但是手机下是可以登录的
@记忆碎片
不清除你怎么配置的,我测试是没问题的。
@Jimmy http://img.huilang.me/dpjgi.png 是按照你的说明来的
返回页面空白。。。
http://www.xxx.com/auth-qq.php?code=4D1D463B304169B418D2AD815ADA9775&state=34919c5fdb0c90766d50d1da5fa10d32
为什么第一次登陆OK,再次登录的时候就失败呢?麻烦楼主再看看代码有什么问题
@satiling 问题是否解决了?我也遇到了相同的问题
不行 ,没有任何 用
然后访问http://你的域名/auth-qq.php?showurl会显示授权链接 怎么显示500 – 内部服务器错误。
@吾爱资源网
添加key的时候注意引号。
测试了一下,随便一扫竟然是登录我的管理员账号,太危险了

这个是非常大的BUG

博主,究竟是怎么回事啊
@落尘之木 可能是时间太久腾讯改规则了
@bigfa 原因是我已经登录了管理员账号,然后打开QQ关联登录,就关联了账号。换了QQ测试,扫描,返回网址,并未登录,失败;再次扫描,登录状态,成功;退出账号,再次扫描,未登录,失败;再次扫描,返回网页未登录,失败…
也就是说很不稳定,第一次扫描100%不是登录成功,第二次成功创建账号,第三次及以后扫描并不能登录。
如果是已登录了账号,此时扫描登录,会导致账号关联,也就是我之前出现的扫描就是管理员的问题。
还有可能出现串号,就是即使第二次扫描成功登录,退出账号,用另一个QQ扫描,竟然登录的是上一个QQ创建的账户。
最后想问下能解除关联的吗,删除哪个mysql数据库。
不知道是不是https和http混淆的问题,回调是https的
@落尘之木 如果无法从腾讯服务器获取用户unionid会自动跳转到首页。
我的为啥登录以后进不去用户中心呢