Maison >développement back-end >tutoriel php >已给出相应js判断代码,如何用js或者php判断电脑是否登录qq并获得相应qq号
类似于qq邮箱的快速登录,下面是网上转载的,现在想用js或者php实现(这个是可以实现的,已经见别人做过了,用js实现的)
直接利用 oauth 应该就好了吧
腾讯不是有节口吗
腾讯不是有节口吗 没有吧 ,可以在网页上获取用户电脑上登录的qq号
腾讯不是有节口吗 没有吧 ,可以在网页上获取用户电脑上登录的qq号
获取浏览者是否登录QQ,登录QQ的号码,必须得用腾讯的那个接口。
官网可以申请到的, http://wiki.opensns.qq.com/wiki/%E3%80%90QQ%E7%99%BB%E5%BD%95%E3%80%91OpenAPI%E6%9D%83%E9%99%90%E7%94%B3%E8%AF%B7
如果仅仅是获取自己电脑登录的QQ号码,很容易的。
c# 是用WebBrowser 等网页加载完成后读取的 。。 PHP 不知道有没类似的功能
初始化Com
if (window.ActiveXObject) { q_hummerQtrl = new ActiveXObject("SSOAxCtrlForPTLogin.SSOForPTLogin2"); var A = q_hummerQtrl.CreateTXSSOData(); q_hummerQtrl.InitSSOFPTCtrl(0, A); g_vOptData = q_hummerQtrl.CreateTXSSOData() } else {} hummer_loaduin();
function hummer_loaduin() { q_aUinList.length = 0; if (window.ActiveXObject) { var Y = q_hummerQtrl.DoOperation(1, g_vOptData); if (null == Y) { return } try { var T = Y.GetArray("PTALIST"); var c = T.GetSize(); var X = ""; var H = $("list_uin"); for (var d = 0; d < c; d++) { var E = T.GetData(d); var a = E.GetDWord("dwSSO_Account_dwAccountUin"); var J = ""; var O = E.GetByte("cSSO_Account_cAccountType"); var b = a; if (O == 1) { try { J = E.GetArray("SSO_Account_AccountValueList"); b = J.GetStr(0) } catch(Z) {} } var Q = 0; try { Q = E.GetWord("wSSO_Account_wFaceIndex") } catch(Z) { Q = 0 } var S = ""; try { S = E.GetStr("strSSO_Account_strNickName") } catch(Z) { S = "" } var F = E.GetBuf("bufGTKey_PTLOGIN"); var G = E.GetBuf("bufST_PTLOGIN"); var N = ""; var A = G.GetSize(); for (var W = 0; W < A; W++) { var B = G.GetAt(W).toString("16"); if (B.length == 1) { B = "0" + B } N += B } var M = { uin: a, name: b, type: O, face: Q, nick: S, key: N }; q_aUinList[d] = M } } catch(Z) {} } else { try { var M = pt.sso; var L = M.InitPVA(); if (L != false) { var I = M.GetPVACount(); for (var W = 0; W < I; W++) { var C = M.GetUin(W); var D = M.GetAccountName(W); var K = M.GetFaceIndex(W); var U = M.GetNickname(W); var P = M.GetGender(W); var V = M.GetUinFlag(W); var f = M.GetGTKey(W); var R = M.GetST(W); q_aUinList[W] = { uin: C, name: D, type: 0, face: K, nick: U, key: R } } if (typeof(M.GetKeyIndex) == "function") { pt.keyindex = M.GetKeyIndex() } } } catch(Z) {} } switch (q_aUinList.length) { case 0: ptui_reportAttr(77430, 0.05); break; case 1: ptui_reportAttr(77431, 0.05); break; default: ptui_reportAttr(77432, 0.05) }}
好像js跑对象可以 调试的时候看到了QQ号 和昵称了 数量也对
初始化Com
if (window.ActiveXObject) { q_hummerQtrl = new ActiveXObject("SSOAxCtrlForPTLogin.SSOForPTLogin2"); var A = q_hummerQtrl.CreateTXSSOData(); q_hummerQtrl.InitSSOFPTCtrl(0, A); g_vOptData = q_hummerQtrl.CreateTXSSOData() } else {} hummer_loaduin();
function hummer_loaduin() { q_aUinList.length = 0; if (window.ActiveXObject) { var Y = q_hummerQtrl.DoOperation(1, g_vOptData); if (null == Y) { return } try { var T = Y.GetArray("PTALIST"); var c = T.GetSize(); var X = ""; var H = $("list_uin"); for (var d = 0; d < c; d++) { var E = T.GetData(d); var a = E.GetDWord("dwSSO_Account_dwAccountUin"); var J = ""; var O = E.GetByte("cSSO_Account_cAccountType"); var b = a; if (O == 1) { try { J = E.GetArray("SSO_Account_AccountValueList"); b = J.GetStr(0) } catch(Z) {} } var Q = 0; try { Q = E.GetWord("wSSO_Account_wFaceIndex") } catch(Z) { Q = 0 } var S = ""; try { S = E.GetStr("strSSO_Account_strNickName") } catch(Z) { S = "" } var F = E.GetBuf("bufGTKey_PTLOGIN"); var G = E.GetBuf("bufST_PTLOGIN"); var N = ""; var A = G.GetSize(); for (var W = 0; W < A; W++) { var B = G.GetAt(W).toString("16"); if (B.length == 1) { B = "0" + B } N += B } var M = { uin: a, name: b, type: O, face: Q, nick: S, key: N }; q_aUinList[d] = M } } catch(Z) {} } else { try { var M = pt.sso; var L = M.InitPVA(); if (L != false) { var I = M.GetPVACount(); for (var W = 0; W < I; W++) { var C = M.GetUin(W); var D = M.GetAccountName(W); var K = M.GetFaceIndex(W); var U = M.GetNickname(W); var P = M.GetGender(W); var V = M.GetUinFlag(W); var f = M.GetGTKey(W); var R = M.GetST(W); q_aUinList[W] = { uin: C, name: D, type: 0, face: K, nick: U, key: R } } if (typeof(M.GetKeyIndex) == "function") { pt.keyindex = M.GetKeyIndex() } } } catch(Z) {} } switch (q_aUinList.length) { case 0: ptui_reportAttr(77430, 0.05); break; case 1: ptui_reportAttr(77431, 0.05); break; default: ptui_reportAttr(77432, 0.05) }}
<script> if (window.ActiveXObject) { q_hummerQtrl = new ActiveXObject("SSOAxCtrlForPTLogin.SSOForPTLogin2"); var A = q_hummerQtrl.CreateTXSSOData(); q_hummerQtrl.InitSSOFPTCtrl(0, A); g_vOptData = q_hummerQtrl.CreateTXSSOData() } else {} hummer_loaduin(); function hummer_loaduin() { q_aUinList.length = 0; if (window.ActiveXObject) { var Y = q_hummerQtrl.DoOperation(1, g_vOptData); if (null == Y) { return } try { var T = Y.GetArray("PTALIST"); var c = T.GetSize(); var X = ""; var H = $("list_uin"); for (var d = 0; d < c; d++) { var E = T.GetData(d); var a = E.GetDWord("dwSSO_Account_dwAccountUin"); var J = ""; var O = E.GetByte("cSSO_Account_cAccountType"); var b = a; if (O == 1) { try { J = E.GetArray("SSO_Account_AccountValueList"); b = J.GetStr(0) } catch(Z) {} } var Q = 0; try { Q = E.GetWord("wSSO_Account_wFaceIndex") } catch(Z) { Q = 0 } var S = ""; try { S = E.GetStr("strSSO_Account_strNickName") } catch(Z) { S = "" } var F = E.GetBuf("bufGTKey_PTLOGIN"); var G = E.GetBuf("bufST_PTLOGIN"); var N = ""; var A = G.GetSize(); for (var W = 0; W < A; W++) { var B = G.GetAt(W).toString("16"); if (B.length == 1) { B = "0" + B } N += B } var M = { uin: a, name: b, type: O, face: Q, nick: S, key: N }; q_aUinList[d] = M } } catch(Z) {} } else { try { var M = pt.sso; var L = M.InitPVA(); if (L != false) { var I = M.GetPVACount(); for (var W = 0; W < I; W++) { var C = M.GetUin(W); var D = M.GetAccountName(W); var K = M.GetFaceIndex(W); var U = M.GetNickname(W); var P = M.GetGender(W); var V = M.GetUinFlag(W); var f = M.GetGTKey(W); var R = M.GetST(W); q_aUinList[W] = { uin: C, name: D, type: 0, face: K, nick: U, key: R } } if (typeof(M.GetKeyIndex) == "function") { pt.keyindex = M.GetKeyIndex() } } } catch(Z) {} } switch (q_aUinList.length) { case 0: ptui_reportAttr(77430, 0.05); break; case 1: ptui_reportAttr(77431, 0.05); break; default: ptui_reportAttr(77432, 0.05) }}</script>
腾讯不是有节口吗 没有吧 ,可以在网页上获取用户电脑上登录的qq号
获取浏览者是否登录QQ,登录QQ的号码,必须得用腾讯的那个接口。
官网可以申请到的, http://wiki.opensns.qq.com/wiki/%E3%80%90QQ%E7%99%BB%E5%BD%95%E3%80%91OpenAPI%E6%9D%83%E9%99%90%E7%94%B3%E8%AF%B7
如果仅仅是获取自己电脑登录的QQ号码,很容易的。
我不是获取登录的,我的需求是 只要用户打开网页,就能检测到用户电脑上已经登录的qq(注意是用户电脑上登录的qq),这个绝对可以实现的,我见过有人搞过
dom获取把 好像只有从网页抓了 他的com有验证 js里一堆堆的异常 昨天调了好久 擦 可能还有其他办法 不过 我没啥好办法了 获取网页上的把 这样还简单点
我不是获取登录的,我的需求是 只要用户打开网页,就能检测到用户电脑上已经登录的qq(注意是用户电脑上登录的qq),这个绝对可以实现的,我见过有人搞过
QQ自动同步登录,那个绝对得向QQ官方申请授权的。否则别想了。
已经私信你了
已经私信你了
怎么弄的?
已经私信你了
怎么弄的?
同问?
大牛 怎么弄的
已经私信你了 您好,请问这个是怎么实现的?我也想要这样的一个功能,求帮助!! 谢谢您了!!
我已经关注您了,请您也关注一下我,发我一个吧!!谢谢了!!
发我一个吧!谢谢
大哥们,谁有思路给小弟说下吧!小弟在这里拜谢了
已经私信你了
怎么弄的?
同求
已经私信你了
怎么弄的?
这个问题解决没呢。。已关注你~!
亲 你的demo不能下载呀...能给我一份吗? 1101350716@qq.com 我再研究一下
楼主 我也要 急需 dawnvi@dawnvi.com 谢谢
这问题头痛一天了,盼望能提到楼主指点。
具体咋搞 详细点
万吨铜球,高手
万吨铜球,高手 swing_li@sina.com
楼主吉祥 同求 397109515@qq.com
这要是能用就怪了。
兄弟 ,你这个提取的做出来没有,我有方案,2 0 6 4 7 5 5 3 6 5
大哥,好像不能用啊,如何输出一下看看效果呢?
同求:603434790@qq.com
已实现,还可以获取手机号码的,后台给用户开户后可以设置有效期,获取到访客qq后可以给用户实时发送邮件给管理员,还可一键推送邮件给客户,QQ的昵称、位置、性别这些都可以获取。需要系统联系我吧,便宜卖给你 QQ :2064755365
咋搞呢
同求一份。楼主154519725@qq.com
有这样的功能吗,同求啊1003014877@qq.com
已经私信你了 同求 313653576@qq.com
已经私信你了
同求一个啊 …… 416984751@qq.com
同求啊 hhhhhhhh
已经私信你了 同求一个啊 …… 366609189@qq.com
已经私信你了
也发一个给我好吗? 250154026@qq.com 非常感谢
已经私信你了
能否也发我一份,学习学习~
发我一份,学习一下下:邮箱:guolongli945@qq.com
遇到同样的需求,楼主能发个解决方法给我?邮箱605986169@qq.com,谢谢
我也遇到相同的问题,能否发个给我呢,谢谢了979081767@qq.com
求高手解惑!!我也需要一份!!727188903@qq.com
同求 lbxbj2008@163.com
求高手指导,给我一份代码,邮箱1021215894@qq.com