QQ的接口a.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
QQ的接口a

找寻支持QQ?HTTP协议的服务器。 大家也许会被一些假像所迷惑,也许会认为QQ的HTTP服务器是基于80口进行通信的(如:3:80),其实不然,正真基于HTTP的服务器是: HYPERLINK :8000/ :8000,它是一个通过8000口进行通讯的服务器。 由于QQ的HTTP服务器并不支持HTTP协议中GET方法,它支持POST方法。所以我们要给QQ的HTTP协议传参数,那么就必需要用POST方式才行。 2、C#和DELPHI是实现HTTP的POST方法的通信。 C#: ??C#里System.Web空间下提供了一个叫做WebClient的对象,使用此对象就可以使C#直接对服务器发送WEB客户端的请求。那么我们要对服务器提交POST方法那么就必须使用其UploadData()方法才行。首先把要请求的信息先转换为字节(因为POST提交的是字符的流数据),然后再做为UploadData()的参数。使用UploadData()进行数据提交,最后返回,POST的回馈信息。如下: ??WebClient?_client?=?new?WebClient(); ??string?postValues?=?VER=1.0CMD=Query_StatSEQ=12321UINN=50UN=0; ??Byte[]?byteArray?=?System.Text.Encoding.ASCII.GetBytes(postValues); ??Byte[]?pageData?=?_client.UploadData(Host,POST,byteArray); 这样,我们就利用C#进行了一次HTTP的POST方法提交了。 值在传入、返回时,其是基于UTF-8进行的,C#显示中文是很常. 3、实现QQ的用户登录。 在QQ通信中用户必需要登录后才可以进行互相发送信息等。QQ的登录是很关键的,大家所看到的用户在线,并不是用户的QQ一直连接着服务器,而是定时发送消信给服务器,证明自己还连着线,如果超出时间QQ就认为用户已经掉线了。 在登录协议中,QQ的密码是用标准的MD5来进行加密,而C#自已带有,但是直接用不了,必需进行处理后,才能使其变成标准的MD5,处理代码如下: ?? ???????????????public?static?string?MD5(string?toCryString) { MD5CryptoServiceProvider?hashmd5; hashmd5?=?new?M D5CryptoServiceProvider(); return?BitConverter.ToString(hashmd5.ComputeHash(Encoding.Default.GetBytes(toCryString))).Replace(-,).ToLower();//asp是小写,把所有字符变小写 }? 了解QQ是如何对用户密码加密后,那么我们就开始真正,解析QQ的HTTP登录协议了,我们把协议当传POST的参数传给服务器,而服务器则回馈相应的信息给客户端: 传入协议: ??VER=1.1CMD=LoginSEQ=UIN=PS=M5=1LC=9326B87B234E7235 ??VER是用来说明QQ协议的版本,CMD是说明协议的命令,Login就是指QQ的登录了,SEQ是他的为了防止重复发送而设定的一个标记,一般我们取当前时间数值的一段放入即可。(C#:DateTime.Now.Ticks.ToString().Substring(7,7)?DELPHI:CopyStr(inttostr(GetTickCount()),1,5)),UIN是说明你当前要登录的用户QQ号,PS,是MD5加密过后的密码的值。 返回协议: diyhack /main.html?qqid=QQ号 这样就可能看对方的空间 /QQ号/11/00 看MM的QQ绣 /QQ号/ QQ 书签 /QQ号 这个是看她的Q吧 /QQ号 看MM的拍拍 /z/ShowUser.e?sp=QQ号 这个是什么呢,问问 /pa?p=1:QQ号:4 这个是查看好友在不在就看这个了 /qzone/v6/newlimit/index.html?s=1uin=365355774jump=http%3a%2f%2%2f365355774%3fADUIN%3d710943589%26ADSESSION%3d1350066999%26ADTAG%3dCLIENT.QQ.4789_FriendTip.0%26ptlang%3d2052 . ??VER=1.1CMD=LoginSEQ=11281UIN=RES=0RS=0HI=60LI=300(成功) RES为0表示成功返回,RS为0表示登录

文档评论(0)

gm8099 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档