本文實例講述了WebQQ最新登陸協議的用法。分享給大家供大家參考。具體分析如下:
WebQQ協議更新後,原登陸算法等信息改變,導致很多朋友無法正常登陸,本站發布了一些與WebQQ最新登陸協議相關的文章,有因為未發布Demo,一些朋友會加Q來問,是否適應最新的WebQQ,本文就做一個小的Demo來供大家測試.
聲明:
1、本Demo做的比較簡單,未對密碼及驗證碼等對錯做驗證,只是做登陸演示.
2、QQ是個比較隱私的東西,那麼請您用測試號登陸本軟件,先小人後君子吧.
本站與最新WebQQ登陸協議相關文章,WebQQ二次登陸失敗{“retcode”:103,”errmsg”:”"}
解決辦法:重新抓了一次包,發現現在WebQQ將登陸加入SSL層也就是Https在第一次登陸的時候,返回的數據如下:
復制代碼 代碼如下:ptuiCB('0','0','http://ptlogin4.web2.qq.com/check_sig?pttype=1&uin=你的QQ號&service=login&nodirect=0&ptsig=一串加密數據s_url=http%3a%2f%2fweb2.qq.com%2floginproxy.html%3flogin2qq%3d1%26webqq%5ftype%3d10&f_url=&ptlang=2052&ptredirect=100&aid=1003903&daid=164&j_later=0&low_login_hour=0®master=0','0','登錄成功!', 'I');
上述數據中包含一個回調地址,代碼如下:
復制代碼 代碼如下:<a href="http://ptlogin4.web2.qq.com/check_sig?pttype=1&uin">http://ptlogin4.web2.qq.com/check_sig?pttype=1&uin</a>=你的QQ號&service=login&nodirect=0&ptsig=一串加密數據s_url=http%3a%2f%2fweb2.qq.com%2floginproxy.html%3flogin2qq%3d1%26webqq%5ftype%3d10&f_url=&ptlang=2052&ptredirect=100&aid=1003903&daid=164&j_later=0&low_login_hour=0®master=0
訪問上面的地址(302跳轉,注意Cookie的獲取),獲取到一個Cookie名為p_skey,將這個Cookie在二次登陸的時候,加入到Cookie中即可實現二次登陸.
WebQQ最新登陸協議
1、獲取驗證碼
方法:Get
地址,代碼如下:
復制代碼 代碼如下:https://ssl.ptlogin2.qq.com:443/check?uin=958736715&appid=1003903&js_ver=10041&js_type=0&login_sig=Mge3PexTk00li3ipMUlHCzouT0xU*8MU6YkkZsIUo8*zQKRTM2rwPUOFbhbGw1No&u1=http%3A%2F%2Fweb2.qq.com%2Floginproxy.html&r=0.9403657828909222
Cookie:提交無,返回ptvfsession或verifysession
2、第一次登陸
方法:Get
地址,代碼如下:
復制代碼 代碼如下:https://ssl.ptlogin2.qq.com:443/login?u=【QQ號碼】&p=【加密後的密碼】&verifycode【驗證碼】&webqq_type=40&remember_uin=1&login2qq=1&aid=1003903&u1=http%3A%2F%2Fweb2.qq.com%2Floginproxy.html%3Flogin2qq%3D1%26webqq_type%3D40&h=1&ptredirect=0&ptlang=2052&daid=164&from_ui=1&pttype=1&dumy=&fp=loginerroralert&action=3-12-12775&mibao_css=m_webqq&t=1&g=1&js_type=0&js_ver=10041&login_sig=Mge3PexTk00li3ipMUlHCzouT0xU*8MU6YkkZsIUo8*zQKRTM2rwPUOFbhbGw1No
Cookie:提交ptvfsession或verifysession,返回pt2gguin、uin 、skey、ETK、superuin、superkey、supertoken 、ptisp、RK、ptuserinfo、ptcz 、ptcz、airkey、ptwebqq 。
3、第一次登陸成功後返回回調地址
方法,Get
地址,代碼如下:
復制代碼 代碼如下:http://ptlogin4.web2.qq.com/check_sig?pttype=1&uin=【QQ號碼】&service=login&nodirect=0&ptsig=tLfZcSFkHNP57Lg0tPtLM6XLh73XeghnEH3pTFyHCLY_&s_url=http%3A%2F%2Fweb2.qq.com%2Floginproxy.html%3Flogin2qq%3D1%26webqq_type%3D40&f_url=&ptlang=2052&ptredirect=100&aid=1003903&daid=164&j_later=0&low_login_hour=0®master=0
Cookie:提交ptvfsession、verifysession、skey、ptcz:、ptwebqq、RK、superkey、supertoken。返回pt2gguin、uin、skey、p_uin、p_skey、pt4_token。
4、第二次登陸
方法:Post
地址:復制代碼 代碼如下:http://d.web2.qq.com/channel/login2
Cookie:提交ptvfsession、verifysession、skey、ptcz:、ptwebqq、RK、superkey、supertoken、p_skey、pt4_token、uin、p_uin、ptui_loginuin。
其他細節本文不再敘述,如果還有其他問題,請自行采取抓包軟件,對WebQQ登陸進行抓包,無太大的技術含量,各位看官自行努力,如果您參照上述說明依然無法解決你的問題的話,那只有檢查其它原因了.
希望本文所述對大家的PHP程序設計有所幫助。