前段时间在拿到苹果的对账数据之后,发现数据与服务器上的数据差异很大,这点让我感觉很奇怪,于是我对数据库内存储的单据做了一次详细的检查,最开始的想法是黑卡,或者退款,但苹果的对账单内显示,退款很少,那问题的关键并不在这儿,我只能一条一条的排查,在排查的过程中,我发现了这样的情况:
1)in_app内是空的;
2)in_app内购买的是别的项目;
这个就是典型的伪造单据了,这些黑客怎么生成这个单据的我不知道,而且这些单据,特别是第一类,还能在苹果的服务器上验证通过?
我后来想了一下,修改了一下代码,加强了客户端传递数据的校验,客户端传递给我的购买项目和数量,必须和in_app内某一项完全吻合,我才给与物品,否则直接把这个账号封号。