最近遇到了12306的一个大坑,说起来是这样: 之前在APP或官网登记身份证并成功购买过车票,那么购票人的信息就会被保存在当前账户下,下次购买,你只要还选择你要买票的乘客,就可以顺利出票。 以上过程,业务场景上是没问题,但是,出问题了,已经保存的某位乘客信息,身份证号变了(别问我为什么会变,这就是之前广大农村户籍办登记户口时候的差错了,错名字的某个字,我的就错了,只是一直没改,还有错出生年月日等,或者有人就是想更改一下身份证年龄都有可能),理论上在用户更改身份证之后,户籍系统会实时更新,当这个时候,再用这个用户旧的身份证号码买票(也就是我们之前买过票的乘客信息)去购买车票的时候,就会提示身份证号错误等信息,但是,12306没有这样的验证机制。 所以,卖糕的,我买成功了车票,去取车票的时候,用的是新的身份证,提示没有车票,当反应过来,是因为身份证号变了的原因,可是旧的身份证已经销毁了,那么就面临的证明我这个新的自己就是我那个旧的自己的问题。 这就好比证明你妈妈就是你妈妈一样,的去出具证明我自己就是我自己的证明材料。 这样的证明很有道理,可有无比奔溃。最终成功的错过了发车时间,退票改签同样的出具证明,已经无力吐槽。 作为用户,免费测试了一下12306的用户录入表单,在首次录入乘客信息的时候,确实校验了身份证与用户匹配信息,再今后的购买车票的时候,只需要选择乘客即可,并不会再次校验了。 不知道以上这样的情况,会不会有更多的乘客遇到,12306产品是否意识到这个异步流程。 呃,又尝试录入了一下旧的身份证,依旧可以正常录入到常用联系人里,但在半年内无法删除,应该是防止黄牛用同一个账号去刷票吧。可见户籍系统里的身份证信息并没有和12306实时同步。 目前来说,只能每次买票,再次核对一下身份证上的信息,而不是仅仅依赖常用联系人的保存信息了。