哥们姐们,今天我来给大伙儿聊聊我最近折腾出来的一点小玩意儿,这个东西,说起来可能有点生僻,就是那个叫做的玩意儿。这玩意儿咋用?别急,我一步步跟你说,跟说书一样,把我当时怎么一点点啃下来的过程都给你倒腾出来。
本站为89游戏官网游戏攻略分站,89游戏每日更新热门游戏,下载请前往主站地址:www.gm89.icu
话说这事儿,还得从我爸妈那里说起。你们也知道,老人家年纪大了,手机流量、话费那些事儿,真是把他们愁坏了。每次到了月底,流量眼看要超了,或者想查查上个月话费明细,他们就得拿着手机,在那个App里戳半天,然后给我打电话问我。我当时就想,有没有什么办法能让我一键搞定这些事儿,省得他们每次都找我,我也省心。
我当时就犯愁,官方App用起来实在是不顺手,各种广告、各种跳转,真是把我搞得头大。有一天我无聊,就在手机号相关的服务页面上乱点,随手打开了浏览器的开发者工具(就是那个按F12出来的窗口)。我当时也没多想,就想看看这页面背后到底在搞啥名堂。
我怎么发现这“宝贝”的?
我就是那么盯着网络请求列表看看,突然就发现有个请求的地址,里面赫然出现了“10086”的字样,而且还带了个“*”!我当时心里就“咯噔”一下,直觉告诉我,这玩意儿肯定是个好东西。我以前就听人说过,很多网站的服务,都是通过后端接口来提供的,前端页面只是个“皮”。那这“*”不会就是这些服务的真身?
我点进去仔细一看,好家伙,里面确实是一些JavaScript代码,但更重要的是,我看到了好几个网络请求的URL,全都是开头!而且这些请求,参数里带的有手机号,有验证码,还有一些我看不太懂的加密字符串。我当时就激动了,心想这不就是我一直想找的“后门”吗?
我的“侦探”之路,一步步摸索
行,既然找到了目标,那我就得开始我的“侦探”工作了。
-
第一步:看清它的真面目。
我做的第一件事,就是把这些的请求挨个点了出来,仔仔细细地看。我看它的请求方法是GET还是POST,看它带了哪些参数,参数的值都是些尤其是一些看起来像“验证码”、“Token”之类的,我更是重点关注。我发现,每次我查一个东西,比如查流量,它就会发一个对应的请求。这个请求的地址、参数,每次都是有点规律的。
-
第二步:模仿,然后测试。
光看没用,得亲手试试。我找了一个能发HTTP请求的工具(你们就理解成一个能模拟浏览器发请求的软件就行),然后就照着浏览器里看到的样子,依葫芦画瓢地把请求地址、请求方法、所有参数都填了进去。第一次发出去,毫无疑问,失败了!返回一堆乱七八糟的错误提示。
我当时有点沮丧,但也没放弃。我继续观察,发现每次我登录或者做一些关键操作的时候,请求头里会多出一个叫“Cookie”的东西。这玩意儿我懂,肯定是个身份凭证!也就是说,你得先“登录”了,才能去查你的个人信息。
-
第三步:攻克“登录”这道坎。
登录,这就麻烦了。它肯定不是简单发个手机号和密码就能搞定的。我注意到,有一个登录的请求,它需要一个图形验证码。这下把我难住了,因为这个图形验证码是图片,我总不能每次都手动输入?我琢磨了半天,才发现,原来它还有一种“短信验证码登录”的方式!这不就简单多了吗?
我立马调转方向,去研究短信验证码登录的请求。我发现,它分两步:第一步是请求发送验证码,第二步是带着手机号和收到的验证码去登录。我照着样子把这两个请求都模仿了一遍,这回功夫不负有心人,我终于成功地模拟登录了!登录成功之后,它会返回一大堆东西,其中就有我一直盯着的那个“Cookie”或者叫“sessionID”之类的身份凭证。
-
第四步:把登录态“传递”下去。
有了这个身份凭证,我后面的操作就好办多了。我把登录成功后拿到的那个凭证,带到所有后续的请求里,比如查流量的请求、查话费的请求。你猜怎么着?全部都成功了!我当时真是激动坏了,感觉像发现了新大陆一样。
-
第五步:小脚本,大用途。
为了方便,我把这些一步步的操作,都用一个简单的脚本给串了起来。这脚本不是什么高大上的东西,就是一个能自动发请求、接收返回数据、然后把数据整理出来的小程序。我用这个脚本,先模拟登录,拿到身份凭证,然后用这个凭证去查我爸妈的实时流量和话费余额。每次运行一下,就能把最新的数据给我吐出来。
折腾完,我得到了
折腾这个花了我好几个晚上的时间,各种坑,各种失败。但我成功了。我现在只要点一下我写的这个小脚本,就能立马看到我爸妈手机的最新情况,再也不用他们费劲去App里找了。我甚至还给脚本加了点小功能,如果流量快用完了,就给我发个提醒。我爸妈现在每次问我,我都直接秒回,他们都觉得我是个“科技大神”!
所以说,很多时候,那些看起来很复杂、官方不给开放的功能,只要你肯动手,花点心思去研究它背后是怎么运作的,总能找到一些“野路子”给自己带来方便。这个,就是我挖出来的宝藏,今天把我的折腾过程分享给你们,希望能给大家一点启发。动手能力强一点,生活就能少一点烦恼,多一点乐趣。