TA的每日心情 | 奋斗 2020-6-5 22:18 |
---|
签到天数: 22 天 [LV.4]偶尔看看III
|
欢迎您注册加入!这里有您将更精采!
您需要 登录 才可以下载或查看,没有账号?注册
x
前面我们在
易语言+HttpWatch分析并编写Discuz! X1.51论坛管理器第九课——首次进入开心农场篇(一) 中讲述了HttpWatch所截取的“开心农场-应用”的前10条数据,下面我们来接着讲述后面的数据:
首先我们来看下
第十一条数据:
Headers(协议头):
(Request-Line) GET /dzx151gbk/home.php?mod=spacecp&ac=pm&op=checknewpm&rand=1333632641 HTTP/1.1
Accept */*
Accept-Encoding gzip, deflate
Accept-Language zh-cn
Connection Keep-Alive
Cookie 6Qvx_2132_lastvisit=1333628254; 6Qvx_2132_sid=quCU75; 6Qvx_2132_lastact=1333632641%09userapp.php%09app; _D_SID=E39D2ACE; 6Qvx_2132_seccodeS9cI0=457brC3zuwd%2FimVQH2aE0m8lq3w3z9B42IfCcAMA6W3EDpGAMbDaGbXRKqgsnZslrJHQfn65CcIWl6w; 6Qvx_2132_auth=d55bnSYpRtE1w070lufuDHAzejLUin7P9nJnVwMr3PSr%2BAMnpWKlz47nA6ZbOymg%2FWf5jj5oimBGylHU88DQ; 6Qvx_2132_ulastactivity=8c87f7uNaUt3b8EDmQNiE%2BDup5U%2F3rZ8yvMtWyDJBbmtH%2Fd61DTZ; 6Qvx_2132_home_readfeed=1333631944
Host demo.wgbcw.com
Referer http://demo.wgbcw.com/dzx151gbk/ ... &my_suffix=Lw%3D%3D
User-Agent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322)
Cookies :略
Query String(查询字串):
ac pm
mod spacecp
op checknewpm
rand 1333632641
POST Data:无; Content:无
Stream(数据流):有两个部分,省略,我们仅用来参考下就可以。
经编写代码测试后发现:第十一、十二、十三条数据中没发现和农场有关的数据(这里只是初步判断,到后面用到再祥细分析)。另外第十四、十五、十六、十七条数据都是和图标有关的,我们则省略。
下面我们接着分析第十八条数据:
看到上面这条数据,不难看出URL中有个“1021978”,前面我们提到过这是农场ID,那这条数据一定有农场有关,我们就不能放过,下面看下和这条数据相关的内容:
Headers(协议头):
(Request-Line) GET /?act=iframe&my_sig_uId=9455534646&my_sig_sId=9022208&my_sig_time=1333633349&my_sig_sessionId=4f7da14508ppg0hm8324a17858c30e01&my_sig_added=1&my_sig_prefix=http%3A%2F%2Fdemo.wgbcw.com%2Fdzx151gbk%2F&my_sig_appId=1021978&my_sig_page_app=userapp.php%3Fmod%3Dapp%26id%3D1021978%26my_suffix%3D&my_sig_page_login=member.php%3Fmod%3Dlogging%26action%3Dlogin&my_sig_page_install=userapp.php%3Fmod%3Dmanage%26appid%3D1021978&my_sig_in_iframe=1&my_sig_v=0.1&my_sig_uLevel=USER&my_sig_key=c91b529e2574ccd76392f917403bcd90 HTTP/1.1
Accept image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Accept-Encoding gzip, deflate
Accept-Language zh-cn
Connection Keep-Alive
Host my.hf.fminutes.com
Referer http://apps.manyou.com/1021978/? ... 2d3199c6207b19d1c8b
User-Agent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322)
Cookies :略
Query String(查询字串):
act iframe
my_sig_added 1
my_sig_appId 1021978
my_sig_in_iframe 1
my_sig_key c91b529e2574ccd76392f917403bcd90
my_sig_page_app userapp.php?mod=app&id=1021978&my_suffix=
my_sig_page_install userapp.php?mod=manage&appid=1021978
my_sig_page_login member.php?mod=logging&action=login
my_sig_prefix http://demo.wgbcw.com/dzx151gbk/
my_sig_sessionId 4f7da14508ppg0hm8324a17858c30e01
my_sig_sId 9022208
my_sig_time 1333633349
my_sig_uId 9455534646
my_sig_uLevel USER
my_sig_v 0.1
POST Data:无;
Content:内容太多略。
Stream(数据流):有两个部分,省略,我们仅用来参考下就可以。
经编写代码测试后,此条数据所用到的Query String(查询字串)必需在上一课中的第10条数据通信后的Content(返回内容)里找到,经好多次编写代码测试终于取到了上面的Query String。在HttpWatch第十条数据的Content里显示为UTF8编码方式,这样我们就可以编写代码来获取我们想要的数据了,可按照正常的思路编写代码后所取得总是乱码,经过这三天断续反复检查代码,最后发现取得乱码的原因是GZIP没解压,因在浏览器中本身就存在GZIP解压功能,所以显示就是正常的方式。今天加上GZIP解压后取得了正确的网页代码……下面把取Query String的代码帖上给大家参考下:
.版本 2
.版本 2
.数据类型 首次进入农场第十八条数据GET, , 农场第十八条数据GET查询字串结构,第十课(9.2)中增加
.成员 act, 文本型
.成员 my_sig_uId, 文本型
.成员 my_sig_sId, 文本型
.成员 my_sig_time, 文本型
.成员 my_sig_sessionId, 文本型
.成员 my_sig_added, 文本型
.成员 my_sig_prefix, 文本型
.成员 my_sig_appId, 文本型
.成员 my_sig_page_app, 文本型
.成员 my_sig_page_login, 文本型
.成员 my_sig_page_install, 文本型
.成员 my_sig_in_iframe, 文本型
.成员 my_sig_v, 文本型
.成员 my_sig_uLevel, 文本型
.成员 my_sig_key, 文本型
.程序集变量 my_sig_值, 首次进入农场第十八条数据GET, , , 第十课中增加
.子程序 开心农场应用10, , , 指进入应用并进入开心农场数据.hwl中“开心家法场应用”中第10条数据,第十课(9.2)中修改
.局部变量 URL, 文本型
.局部变量 返回内容, 文本型
.局部变量 协议头, 文本型
.局部变量 临时字节集, 字节集
.局部变量 临时文本, 文本型
' 首次进入农场第十条数据
Request.Accept = “image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*”
Request.AcceptEncoding = “gzip, deflate”
Request.AcceptLanguage = “zh-cn”
Request.Connection = “Keep-Alive”
Request.Host = “apps.manyou.com”
Request.Referer = “http://demo.wgbcw.com/dzx151gbk/ ... ;my_suffix=Lw%3D%3D”
Request.UserAgent = “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322)”
协议头 = “”
协议头 = “Accept:” + Request.Accept + #换行符 + “Accept-Encoding:” + Request.AcceptEncoding + #换行符 + “Accept-Language:” + Request.AcceptLanguage + #换行符 + “Connection:” + Request.Connection + #换行符 + “Host:” + Request.Host + #换行符 + “Referer:” + Request.Referer + #换行符 + “User-Agent:” + Request.UserAgent ' + #换行符 + “x-requested-with:XMLHttpRequest”
my_值.my_uchId = 账号信息.uid
URL = “/1021978/?my_uchId=” + my_值.my_uchId + “&my_sId=” + my_值.my_sId + “&my_prefix=” + my_值.my_prefix + “&my_suffix=” + my_值.my_suffix + “&my_current=” + my_值.my_current + “&my_extra=” + my_值.my_extra + “&my_ts=” + my_值.my_ts + “&my_appVersion=” + my_值.my_appVersion + “&my_fullscreen=” + my_值.my_fullscreen + “&my_sig=” + my_值.my_sig
.版本 2
.如果 (临时文本 ≠ “”)
my_sig_值.act = 取指定文本 (临时文本, “act=”, “&my_sig_uId”, 1)
my_sig_值.my_sig_uId = 取指定文本 (临时文本, “my_sig_uId=”, “&my_sig_sId”, 1)
my_sig_值.my_sig_sId = 取指定文本 (临时文本, “my_sig_sId=”, “&my_sig_time”, 1)
my_sig_值.my_sig_time = 取指定文本 (临时文本, “my_sig_time=”, “&my_sig_sessionId”, 1)
my_sig_值.my_sig_sessionId = 取指定文本 (临时文本, “my_sig_sessionId=”, “&my_sig_added”, 1)
my_sig_值.my_sig_added = 取指定文本 (临时文本, “my_sig_added=”, “&my_sig_prefix”, 1)
my_sig_值.my_sig_prefix = 取指定文本 (临时文本, “my_sig_prefix=”, “&my_sig_appId”, 1)
my_sig_值.my_sig_appId = 取指定文本 (临时文本, “my_sig_appId=”, “&my_sig_page_app”, 1)
my_sig_值.my_sig_page_app = 取指定文本 (临时文本, “my_sig_page_app=”, “&id”, 1)
my_sig_值.my_sig_page_login = 取指定文本 (临时文本, “my_sig_page_login=”, “&my_sig_page_install”, 1)
my_sig_值.my_sig_page_install = 取指定文本 (临时文本, “my_sig_page_install=”, “&my_sig_in_iframe”, 1)
my_sig_值.my_sig_in_iframe = 取指定文本 (临时文本, “my_sig_in_iframe=”, “&my_sig_v”, 1)
my_sig_值.my_sig_v = 取指定文本 (临时文本, “my_sig_v=”, “&my_sig_uLevel”, 1)
my_sig_值.my_sig_uLevel = 取指定文本 (临时文本, “my_sig_uLevel=”, “&my_sig_key”, 1)
my_sig_值.my_sig_key = 取指定文本 (临时文本, “my_sig_key=”, #引号常量 + “ frameborder=”, 1)
输出调试文本 (“my_sig_值.act=====” + my_sig_值.act + “====取my_sig_值.my_sig_key=====” + my_sig_值.my_sig_key)
.否则
取得正确的Query String取后,就可以按照HTTP协议通信方式及现有的编写的代码来完成第十八条数据的通信了,但编程测试后发现有误,所以又重新用HttpWatch分析工具获取了一份通信数据,对比后相比一年前有所变化了,这点我们下一课接着讲述。
注:我们在上一课中提到过个“my_iframe.js”脚本,这脚本名中的“frame”,不是“农场”的意思,这错误应该是一年前那晚太累,一眼看去就以为是“农场”了,实际上昨天我查了下是“框架”之意,这也是在检测代码时发现的,在此做下更正。虽然这不是农场的意思,但这脚本目前还不确定是否和我们要分析的农场有关,所以我的代码里还要保存和它相关的代码。
|
|