最近玩了一个网页纸牌游戏:系统发两张扑克牌,然后比对两张牌获得相应的金币,因为牌是预先发的,我就开始幻想着自己拥有透视神眼,我就将统治这个金币世界。
无意间打开查看器(用的Chrome),这一看之下不得了图1
果然可以,type值表示扑克牌的花色,value值表示点数。一目了然。
正当我得意时,问题来了图2
只有在游戏答案揭晓后我才能在console看到图1显示的数值,在游戏过程中打开只能看到图2所示,他居然躲起来了。
如此一来,我就没有了统治这个金币世界的可能。
请问,为什么在游戏过程中打开就不显示数值,而在游戏结果揭晓后再打开就可以看到具体数值?(加密?)
再问,如何在游戏过程中看到具体数值。
小白一枚,请讲中文。

解决方案 »

  1.   

    补充一点:只要在游戏过程中点开查看过语句的行为,即使游戏结束,再点开也不会显示object的具体数值
      

  2.   

    一个严谨的web游戏肯定是要分客户端和服务器端两部分。
    客户端的数据都是可以用浏览器console控制台看到和修改的。
    而服务器端的数据却是浏览者看不到的。你这个发牌数据肯定是在服务器端生成,并且一开始发牌数据只存放在服务器端。客户端一开始显示的是牌的背面,也就不需要这个发牌数据。
    只有当你操作之后,把你操作的指令传到服务器端,在服务器端判定结果,之后才把发牌数据和判定的结果传回客户端显示给你看。
    也就是在你操作之前是没办法看到发牌数据,也就杜绝了你这样的作弊行为。