坑用户是一定的——小米手机“代码门”, true / false的非议

坑用户是一定的——小米手机“代码门”, true / false的非议

小米手机最近几天又再度闹出了单“代码门”(之前一次还是1s 的时候),小米手机嘛,前几周刚好买了部,但不是抢到的,而是多花了几十块购买同校同学的资格号。其实早前打算抢的时候也曾从技术上分析过他们的网页源代码——但对于起核心作用的javascript 代码没有能力看懂。当时大概也了解,能否抢成功真是靠运气,与神马浏览器、网速等“硬件”因素几乎没多大关系。最近爆出的“代码门”也进一步说明了这点,且让Jeff 还原这个“代码门”, true / false的非议——反正,坑用户是一定的。

“代码门”简介

小米手机“代码门”,大概就是这么着:在你预约购买后,登陆账号状态下打开 http://tc.hd.xiaomi.com/hdget?callback=hdcontrol ,会返回如下类似代码:

“status”:{“allow”:true,”miphone”:{“hdstart”:false,”hdstop”:false,”hdurl”:””,”duration”:null, “pmstart”:false},”mibox”:{“hdstart”:false,”hdstop”:false,”hdurl”:””,”duration”:null, “pmstart”:false}}})

或者:

“status”:{“allow”:false,”miphone”:{“hdstart”:false,”hdstop”:false,”hdurl”:””,”duration”:null, “pmstart”:false},”mibox”:{“hdstart”:false,”hdstop”:false,”hdurl”:””,”duration”:null, “pmstart”:false}}})

注意上面红色的true或 false,如果你的是true ,恭喜你是真的有抢的资格了,去与其他跟你一样true的用户抢购吧;如果是 false,洗洗睡吧,没戏了,无论你再怎么折腾,都是进入不了抢购页面的了——“正在排队中…米粉们的热情实在太高,销售活动场面火爆,人山人海~您已在队伍中,倒计时后请重新进入,稍安勿躁:-)” ╮(╯▽╰)╭

545929292720131018

中午放学后,我回到宿舍,也尝试着输入 http://tc.hd.xiaomi.com/hdget?callback=hdcontrol 看看是否如此(12点时候没有去抢,还在上课,但有预约);但没有返回代码,而是掉转到一个错误提示页面。到下午3 点多的时候,再次试了一下,这回有反馈代码返回了(如图):

小米代码门

“代码门”之一些网络文字、图片摘录

一条微博

来自 @TNITF :关于小米电视抢购真伪。本人职业是一名网页前端开发工程师,经常使用 FireBug Debug 工具,在页面一刷出来后经过工具Debug 出,所谓的按钮仅不过是吧抢购热情高涨的提示框显示出来罢了,完全没有经过post 请求,所谓的抢购根本就是虚假活动,以下是抢购过程Debug 截图。(请 @小米公司 作出合理的解释)

微博网友评论:

@仲仓戟:  对过程极度不满。如果真的是排队系统,肯定知道队伍又多长,立马就能显示结果了。小米官方微博说1分半就卖完,但却让人人在线不断刷5 分钟,这不耍人玩吗。看AJAX  后台调用,明明可以频繁刷新,却硬在前端加了6 秒钟重试机制。把米粉当脑残。

@卖萌搞基sli: 其实AJAX 请求还是有。。但是不是按照时间来生成订单。而是后台抽选。。完全的概率事件 所谓的抢购类似于抽奖 而且10W 的数量我表示有疑问

把米粉当脑残 小米电视抢购“骗局”

 小米抢购系统猫腻推测

我是个网页设计员。小米的抢购页面在我看来确实是有问题的!我在第一次抢购失败后,我就怀疑这个抢购的页面可能就是个骗人的把戏。因为在点击抢购按钮后,系统并没有出现post或者get连接所应该出现的或短或长的时间等待,就是信息递交与反馈过程。

根据我的推测事实应该是这样的——小米抢购的前一天晚上,服务器停止预购登记后,小米公司就通过手动或者服务器自动的方式在已有的数据库中确定了次日中午的中奖名单(具体中奖名单有没有内定,这只有小米公司自己知道),到了次日,凡是已经“内定”的人才可以抢购到(至于是直接可以抢购到,还是由服务器生成规定范围的随机数指定抢购失败次数,最终“被抢购到”,这个鬼才知道了),但是没有“内定”的抢购者,就在为小米的订购计数器免费贡献着自己的大好时光和热情,反正是怎么都甭想抢到的,你只是在玩js循环游戏而已。你每一次的订购点击,会为服务器增加一个点击次数,达到小米服务器设定的10万次点击数了(就是预先说明的10万部手机),系统就自动关闭了,提示售罄!万一“内定”的人没来买怎么办?小米就会在下午三点前将多余的手机再次提前内定,然后到下午三点,准时再上映一次小规模的游戏!当然,没被内定的人还是充当了计数器~

我觉得作为销售方法,这样的方法无可厚非。它可以避免抢购过程中的服务器负担,提高办事效率。但我要说的是:这是抽奖不是抢购!!你就直接说哪天公布中奖结果,不就行了么?干嘛骗老百姓说是抢购呢?多少人高兴而来丧气而归呢?无非是想通过抢购行饥饿营销,制造新闻,炒作人气罢了!这里只是个人的猜测,大家看看有没有是这么回事~(来源:点击查看

小米开放购买代码门,购买权限门后续

……

抢购开始的时候,hdurl 后面会是小米手机的抢购网址(去域名后)。稍微懂代码常识的人都知道,当allow后面的值为false的时候意味着下面的代码将不被执行,也就是说,你进不了页面,把抢购网页复制到浏览器链接栏直接打开,小米服务器也会驳回你的请求,把你送回排队页面。这还意味着,当allow后面的值为true时,你向小米服务器发送的请求才会被受理,让你进入抢购页面,于是allow后面的值为true就成为了是否有机会购买小米手机的一个重要权限。

根据这篇帖子作者的原话(已被禁止),我们知道,一开始这个作者的帐号allow后面的值为true,并且该作者因为allow后面的值为true,在排队系统出来后成功购买了多台小米手机,并且根据多个帐号的测试结果,得出结论:allow后面的值为true才能进入抢购页面选购小米手机,而且作者强调了,是有机会,有进去的概率,而为false则是无限排队,或者进去就被弹出,无法购买小米手机,相信你们中一定有很多人已经忘记了小米选版本的页面是什么样子。该作者之所以曝光这个问题,是因为既得利益的失去,他的帐号前几次allow后面的值还为true,还能购买小米手机,现在allow后面的值为false,无法购买。正是因为这个动机,让我相信该作者,觉得他说的有道理。楼主自己用自己的帐号进行了测试,发现为false,这正好验证了我无法进入抢购页面,无限排队的事实。

但是这不足以说明问题,我还需要对比,我有个同事,每次排队只要排一次,第二次点进入活动,立马进去,每次都能买到一台小米手机,让楼主眼红了很久,楼主曾经尝试了所有的东西,包括电脑系统,网速,网络,浏览器,每一次我都让自己的抢购环境和他一样,但是每一次我都是无限排队,他每次都进。这让楼主纳闷了很久,我把同事的帐号拿来进行测试,顿时五雷轰顶,简直要背过气,气疯了。

……(原始来源未知)

小米论坛被删除的帖子(点击图片可查看原图)

后记

提供了那么多的内容,相信小白也大概明白了吧?为什么说坑用户呢?明明是先在预定的人中抽出一部分人真正获得可以“抢”的资格,而绝大部分人是在12 点开抢前就已经注定是没戏的,但依然在坑用户说“人人平等”“皆有机会”去抢;真正有机会的仅仅是一部分人,而且更不能排除那部方人的认定有暗箱操作的部分。让那些根本没机会的用户去傻傻在电脑前刷新着、傻傻排队着直到返回“已售罄”的页面,然后官方又骄傲地宣称“xx秒卖完,xx秒又超记录”,n天后又来一次抢购,依然再度有人重蹈覆辙,依然有人再度浪费时间……当用户抱着唯一的“求好运”心态去抢,却不知其根本没有机会去抢,这种行为不是忽悠用户是什么?小米公司如此不尊重用户,难道真的将用户当成“脑残”了?

这么说来,我们用户也该好好反省自己:人家这么做法,是不是正是由于盲目跟风者太多了所造成的“多米诺骨牌”效应。固然说小米网络营销搞得非常成功,造就了一大帮“米粉”;在小米营销的圈子下我们也许难以独善其身,但理智也是否欠缺了呢?

小米公司的广告