日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

12306模拟登录

發(fā)布時間:2023/12/20 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 12306模拟登录 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在模擬12306登錄及購票的時候,不要登錄或者購票的次數(shù)測試頻率太高,否則直接封IP。現(xiàn)在12306驗證碼的問題很復(fù)雜,我并不會破解,所以只能做需要帶驗證的模擬登錄和購票。
在模擬的時候,在開發(fā)者工具欄中查看提交的get或者post數(shù)據(jù)。如果只是查看網(wǎng)絡(luò)提交或者接收數(shù)據(jù)用Httpfox最好,他可以把全部的請求顯示出來。用fixbug查看,發(fā)生了網(wǎng)頁跳轉(zhuǎn)的中間請求不能顯示出來。現(xiàn)在來分析登錄過程請求的先后順序以及請求參數(shù)。
驗證碼的地址 https://kyfw.12306.cn/otn/passcodeNew/getPassCodeNew?module=login&rand=sjrand 后面還有一個隨機數(shù),這個隨機數(shù)我沒添加,也是可以請求的,不會報錯,他只是為了防止緩存。

登錄過程中的請求順序


(1)第一個鏈接是檢查驗證碼是否正確
第一個參數(shù)randCode是根據(jù)驗證碼圖片來獲取的。9張小圖片,每張小圖片都有一個像素范文。第一張就是需要選中圖片的題目,后面8張就是需要選擇的答案。我在做swing時,將驗證碼圖片進(jìn)行切割,將每張小圖片按順序放入9個JButton中,作為按鈕的背景。選中哪些圖片,則就會有相應(yīng)的事件來執(zhí)行,將對應(yīng)的對象像素放入數(shù)組中,然后在登錄的時候進(jìn)行處理。圖片效果如下:

登錄前會先訪問https://kyfw.12306.cn/otn/passcodeNew/checkRandCodeAnsyn ,判斷驗證碼和參數(shù)是否正確。返回的結(jié)果為:{“validateMessagesShowId”:”_validatorMessage”,”status”:true,”httpstatus”:200,”data”:{“result”:”1”,”msg”:”TRUE”},”messages”:[],”validateMessages”:{}} ,如果有”msg”:”TRUE”,則驗證碼正確。

(2)進(jìn)行登錄,地址為https://kyfw.12306.cn/otn/login/loginAysnSuggest 參數(shù)為:

其中randCode是驗證時候發(fā)送的驗證碼,采用post方法傳遞參數(shù),鍵的名字一定要對,與表單中的大小寫都要相同。返回數(shù)據(jù):{“validateMessagesShowId”:”_validatorMessage”,”status”:true,”httpstatus”:200,”data{“otherMsg”:”“,”loginCheck”:”Y”},”messages”:[],”validateMessages”:{}} ,返回的json數(shù)據(jù)中有 “l(fā)oginCheck”:”Y”,則登錄信息正確。

(3)登錄成功的最后一步,地址https://kyfw.12306.cn/otn/login/userLogin 。發(fā)送的數(shù)據(jù)較為簡單:

值為空,不會有數(shù)據(jù)返回。
到此為止登錄就分析完畢。總體來說登錄還是很簡單的,沒有復(fù)雜的參數(shù)需要傳遞。

總結(jié)

以上是生活随笔為你收集整理的12306模拟登录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。