读书人

享受代码的快乐-小米抢购前端代码分析

发布时间: 2013-10-21 17:00:48 作者: rapoo

享受代码的快乐--小米抢购前端代码分析
今天来个比较潮的,分析一下小米前端js排队代码;原来的代码和注解后的代码在附件里!
话说小米手机不错,主要是miui不错。买个手机天天要抢。其实我是比讨厌这种营销。
把手机价格搞的低低的,吸引注意。好长一段时间,你很难抢的到手机。
相比小米,我更喜欢魅族,虽然我用的是小米1s.以后有点闲钱,换手机买一部魅族。
下面来享受这段代码。
10.15号的抢购js代码,都写到一个js文件中.里面的代码是mini版本的,查个工具把他格式化一下就可以了。
http://p.www.xiaomi.com/open/131009/mi3/buy/process.min.js
小米为了增加代码阅读的复杂性(也可能为了转义字符),把一些变量定义成一个数组,而且这个数组用16进制表示。
做过白帽子的,应该很熟悉。用16进制表示字符找出很多xss漏洞,sql注入漏洞吧。可以自己写(其实alert或console.info 16进制就可以得到字符串)或找个工具转成字符串,增加代码的可读写性
好了,下面就来分析代码了。
以10.15的抢购代码为例
为了阅读性我们两成两段,一个是他的数组变量_$,另一段是就是其它代码
_$ 变量太长了,我贴一点点,不完整,要看的见附件!



这段代码除了m.doms的方法之外,其它都还比较简单。让我还没开始享受就完了。也让我成了标题党。
总结一下这段代码的意思。
先看一下,10.15,排列的url(其中1382068597029表示当前时间的getTime()值)
http://tc.hd.xiaomi.com/hdget?callback=hdcontrol&_=1382068597029
返回值
 很牛。    5 楼    cuippan    前天              good     6 楼    pochonlee    前天              引用可以肯定小米给每个帐号的概率肯定是不一样的
你想多了。

读书人网 >Web前端

热点推荐