WEB开发网
开发学院软件开发C语言 webqq2.0协议研究(3)-ClientId生成 阅读

webqq2.0协议研究(3)-ClientId生成

 2010-11-07 08:04:00 来源:WEB开发网   
核心提示: 在登陆过程中使用参数clientid,这个参数其实可以自定义的,webqq2.0协议研究(3)-ClientId生成,他的生成没有基于任何服务器返回的参数,但是群里边经常有人提到这个参数算法,这里我就整理下群里讨论的结果 clientid 的算法在eqq.all.js里,在dom里可以看到他是webqq.eqq.rp

  在登陆过程中使用参数clientid,这个参数其实可以自定义的。他的生成没有基于任何服务器返回的参数。但是群里边经常有人提到这个参数算法,

这里我就整理下群里讨论的结果
   clientid 的算法在eqq.all.js里。在dom里可以看到他是webqq.eqq.rpcservice下的getclientid方法返回的。

 js里边的算法为:clientid = String(k.random(0, 99)) + String((new Date()).getTime() % 1000000)
   

 用c#重写:

  以下是群里  ~天 域(41485064)给出的代码:

public static string GenerateClientID()        {            return new Random(Guid.NewGuid().GetHashCode()).Next(0, 99) + "" + GetTime(DateTime.Now) / 1000000;        }public static long GetTime(DateTime dateTime)        {            DateTime startDate = new DateTime(1970, 1, 1);            DateTime endDate = dateTime.ToUniversalTime();            TimeSpan span = endDate - startDate;            return (long)(span.TotalMilliseconds + 0.5);        }

 

Tags:webqq 协议 研究

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接