天天看点

春运在12306买火车票的小技巧

12306.cn上线后买票确实方便了不少,但政府部门的网站天下一般黑,各种Bug和拒绝服务不断,木有办法啊~~不知道有木有同学看到12306就有一种帮他改版的冲动。。分享一点购票的小Tips。

原文地址:http://zyj.me/article/12306-huoche-tips

12306遇到的各种Bugs

12306购票不能打开

这个原因是12306主站基本是一个静态页面,可以承受较大负载。处理购票的server是jsp,负载承受能力有限。

因此,会经常出现502 Bad Gateway asfep等信息。(asfep表示木有听说过,估计是基于nginx类似的修改而来)。

可以试试直接打开,如果人品够好的话: https://dynamic.12306.cn/otsweb/

为保障您顺畅购票,请下载安装根证书。

学过PKI的同学都知道神马原理把。。这句话果断霸气逼人,登一下网站还要装它的root证书。。铁道部不至于连一个Verisign的证书都买不起吧,或者是鄙视Verisign?

安全的忽略之,继续。

浏览器点购票后提示证书错误

必须的,铁道部证书的root是自己的,各个浏览器均会认为不安全。添加为例外或者继续(一般均有这个选项)

安全的忽略之,继续

只显示安全内容

出现这个错误的原因让人哭笑不得,铁道部实际购票的内容是放在frame中的。如果在https的页面出现了http的请求,会提示有安全风险。

安全的忽略之,继续

IE9看起来异常凌乱

如上图,木有办法,指望12306兼容IE9是不可能的,我们只能去兼容12306。点击一下IE地址栏右侧的使用兼容模式浏览(IE8)即可。

Chrome提示dynamic.12306.cn/otsweb/ 拒绝访问

The webpage at https://dynamic.12306.cn/otsweb/ might be temporarily down or it may have moved permanently to a new web address. Error 501 (net::ERR_INSECURE_RESPONSE): Unknown error.

原因同3,真正对购票有用的网址是在https://dynamic.12306.cn/otsweb/ ,Chrome的安全策略不允许这种frame内嵌吧。

可以直接打开https://dynamic.12306.cn/otsweb/ ,正常购票。

无法匹配

春运在12306买火车票的小技巧

无法匹配北京南

这个问题也是最变态的问题。偶尔的,输入出发地和目的地之后,提示无法匹配。这个原因是jQuery出现了错误,难得铁道部的网站还知道jQuery啊。。这个jQuery的作用无非是把输入的“北京南”或者“BJN”转化为火车站的代码,例如,选择北京南之前,如下:

春运在12306买火车票的小技巧

IE查看元素

<input id="fromStation" type="hidden" name="orderRequest.from_station_telecode" />      

正常选择后,该代码变为

春运在12306买火车票的小技巧

Chrome查看元素 

<input id="fromStation" type="hidden" name="orderRequest.from_station_telecode" value="VNP" />      

由于jQuery也是前端操作,所以直接用Firebug、Developer Tools修改一下Value就OK了,已经试验成功。

发现的错误基本就这些吧,我们不能改变铁道部,只能改变自己。

快速购票

春运要来,铁道部网站必然崩溃,面临崩溃咋买到票呢?

1. 如果可以,选择一个电信的网络

铁道部真正购票的域名dynamic.12306.cn指向IP为122.228.243.22,地点竟然在温州电信。。

购票之前,先ping一下dynamic.12306.cn吧,尽量选择一个延迟小的网络,家里不行就去电信的网吧。。

2. 直接打开购票网址

前面已经说过,铁道部真正对购票有用的网址是https://dynamic.12306.cn/otsweb/ ,www.12306.cn都是一些静态内容,无关紧要。果断收藏吧。

3. 不要用低版本的浏览器

原因是,铁道部网站是jQuery写的,低版本浏览器例如IE6稳定性很不好,很容易不兼容。可以选择用IE8、9或者Chrome等打开。

顺便补充一句,今天下午遇到小高峰,预定的时候IE一直出现上述错误6,后来发现Chrome下竟然可以,木有仔细究其原因。

选择出发地和目的地

如果遇到上述错误6,可以用直接修改DOM元素。这个是技术问题,自行Google吧,相信大部分了解Web的同学都懂的。当然,准备好一份出发地和目的地的telcode还是很有必要的。

例如,北京南->VNP……(请铁路系统的同学解释下,北京南为毛是VNP?)

按钮不要点多次

12306所有的按钮都是jQuery发送请求,所以点多了也木有用。相反,点多了可能会出错误。

Hold住你的鼠标,狠狠地点一下,就等吧。例如,在登录的时候,如果多点几下,由于服务器端session有变化,估计会提示验证码错误。

支付

额,支付。。推荐用招行吧,用Chrome浏览器,选招行手机银行,顺利支付之。

春运预售期

附送一个春运购票期。。

春运在12306买火车票的小技巧

春运火车票预售期

继续阅读