Js判断QQ在线状态不准确的解决办法
腾讯提供多个接口用于给普通商家用户进行在线咨询服务,对于各种流行的在线服务面板,使用的最多就是通过js跨域批量获取qq在线情况,如下图:
使用了腾讯的批量判断QQ在线接口("http://webpresence.qq.com/getonline?Type=1&qq号:")最后的冒号一定要带上,代码大致如下:
<script type="text/javascript"> var qqNum=""; $(".qqImage").each(function(index,e){ var temp=$(e).attr("id").split(‘_‘); qqNum+=temp[1]+":"; }); //动态创建javascript跨域获取QQ在线状态 var online = new Array(); var url="http://webpresence.qq.com/getonline?Type=1&"+qqNum; $.getScript(url) .done(function() { //scrpit加载完成后执行在线状态图片的改写 $(".qqImage").each(function(index,e){ var temp=$(e).attr("id").split(‘_‘); if(online[index]=="0"){ $(e).attr("src","images/offline.gif"); } }); }) .fail(function() { alert("客服暂时不可用"); }); </script>
但是实验中发现,有部分号码即使在线,在面板中总是反映不在线,开始以为是代码的问题,但是直接通过接口看的确不在线,最好左思右想才感觉貌似腾讯不会这么不注重隐私(明面上),要不然谁都能看到对方的在线状态,即使不是好友,于是发现了开启QQ在线状态的页面,地址:http://shang.qq.com/widget/set.php
登录后只要选择免费开通即可允许自己的状态被获取,于是问题解决!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。