html中验证qq的正确性,QQ强制聊天js脚本代码 可判断好友关系

(function(exports){

varchatVO = {

//你的QQ

yourQQ: "20737302",

//你好友的QQ

yourFQQ: "649374916",

//女神的QQ

targetQQ: "20618348",

//女神好友的QQ

targetFQQ: "649374916"

};

varconfig = {

init: function(){

varskey;

skey = getCookie("skey") || getCookie("rv2") ||"";

functiongetCookie(name){

varr =newRegExp("(?:^|;+|\\s+)"+ name +"=([^;]*)"), m = document.cookie.match(r);

return!m ?"": m[1];

}

function_DJB (str) {

varhash = 5381;

for(vari = 0, len = str.length; i 

hash += (hash <

returnhash & 2147483647

};

this.sigURL =this.sigURL.replace("{{t}}",_DJB(skey));

},

sigURL: "http://r.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin={{sender}}&to_uin={{receiver}}&g_tk={{t}}",

chatURL: "tencent://message/?Menu=yes&uin={{sender}}&Service=112&SigT={{sigt}}&SigU={{sigu}}"

};

varutil = {

ajax: function(obj){

varxmlHttp;

if(obj.async === undefined){

obj.async = true;

}

if(window.XMLHttpRequest){

xmlHttp = newXMLHttpRequest();

}else{

xmlHttp = newActiveXObject("Microsoft.XMLHTTP");

}

xmlHttp.onreadystatechange=function(){

obj.callback(xmlHttp);

};

xmlHttp.open(obj.type,obj.url,obj.async);

xmlHttp.send();

}

};

varlogic = {

getSigU: function(sender,receiver){

varsigu ="";

util.ajax({

url: config.sigURL.replace("{{sender}}",sender).replace("{{receiver}}",receiver),

type: "get",

async: false,

callback: function(xhr){

if(xhr.readyState == 4){

varhtml = xhr.responseText.replace(/[\n]/g,"");

if(/&SigU=/gmi.test(html)){

sigu = html.split(/&SigU=/m)[1].split(/'/m)[0];

}else{

alert("你和你的好友,好友关系不成立!");

}

}

}

});

returnsigu;

},

getSigT: function(sender,receiver){

varsigt ="";

util.ajax({

url: config.sigURL.replace("{{sender}}",sender).replace("{{receiver}}",receiver),

type: "get",

async: false,

callback: function(xhr){

if(xhr.readyState == 4){

varhtml = xhr.responseText.replace(/[\n]/g,"");

if(/&SigT=/gmi.test(html)){

sigt = html.split(/&SigT=/m)[1].split(/&SigU=/m)[0];

}else{

alert("他和他的好友,好友关系不成立!");

}

}

}

});

returnsigt;

},

runChat: function(sender,sigu,sigt) {

exports.location = config.chatURL.replace("{{sender}}",sender).replace("{{sigt}}",sigt).replace("{{sigu}}",sigu);

}

};

config.init();

varsigu = logic.getSigU(chatVO.yourQQ,chatVO.yourFQQ);

varsigt = logic.getSigT(chatVO.targetFQQ,chatVO.targetQQ);

logic.runChat(chatVO.targetQQ,sigu,sigt);

})(this);

这个脚本,您只需要关注最顶部的四个参数,

yourQQ: "20737302",

yourFQQ: "649374916",

targetQQ: "20618348",

targetFQQ: "649374916"

这四个参数缺一不可,而且必须都正确,读者可根据自己的实际情况填写,主要就是女神好友的QQ可能不知道(任意一个好友即可),猜吧!

假如您不知道女神好友的QQ,乱填一个,会提示好友关系不成立,顺便还可以用这个提示测试两个人是不是好友,很实用吧!

测试的时候忽略了一个问题:女神好友的QQ(targetFQQ),作为中间人,不能随便填,必须同时是你们两个的好友才可以。。。抱歉!!

接下来说说怎么运行这个脚本。

首先要用浏览器打开你的QQ空间,最好使用火狐和谷歌浏览器,然后保持QQ空间是登录状态。

然后在QQ空间的选项卡旁边新建一个选项卡,输入网址:http://r.qzone.qq.com,按回车转到,发现是一片空白,这就对了。

在浏览器上按F12打开控制台,把脚本粘贴到控制台中,运行即可。

为什么要这么做呢。。。登录QQ空间是为了拿到有效的cookie,否则没办法访问腾讯接口,而新建一个选项卡是为了避免跨域问题,同时又可以与登录的QQ空间共享cookie。

其他就没什么了,快动手试试吧!

以上转自杨元博客。

2015年7月23日 15:21:42:测试,bug已修复,侵删。

标签: qq

顶一下

(0)

0%

踩一下

(0)

0%

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值