首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

关于模拟登录页面的有关问题

2012-02-08 
关于模拟登录页面的问题我想做一个程序模拟登录一网站,但总是出问题,请求和回应数据如下:第一步(客户端请

关于模拟登录页面的问题
我想做一个程序模拟登录一网站,但总是出问题,请求和回应数据如下:

第一步(客户端请求):

POST   http://www.lanniao.org/soft/nod32/PPst_Login.asp?Action=Login   HTTP/1.1
Accept:   image/gif,   image/x-xbitmap,   image/jpeg,   image/pjpeg,   application/x-shockwave-flash,   application/vnd.ms-excel,   application/vnd.ms-powerpoint,   application/msword,   */*
Referer:   http://www.lanniao.org/soft/nod32/PPst_Login.asp
Accept-Language:   zh-cn
Content-Type:   application/x-www-form-urlencoded
Accept-Encoding:   gzip,   deflate
User-Agent:   Mozilla/4.0   (compatible;   MSIE   6.0;   Windows   NT   5.1;   SV1;   (R1   1.5);   .NET   CLR   2.0.50727;   .NET   CLR   1.1.4322;   MAXTHON   2.0)
Host:   www.lanniao.org
Content-Length:   51
Proxy-Connection:   Keep-Alive
Pragma:   no-cache
Cookie:   rtime=3;   ltime=1179899260484;   cnzz_eid=89202487-;   cnzz02=4;   ASPSESSIONIDQCDBSRRA=JGOJIEOBNHCMPHOBPMFMHAPC

Username=myname&Password=mypass&Submit=%CC%E1%BD%BB

第二步(服务端应答):

HTTP/1.1   302   Object   moved
Date:   Wed,   23   May   2007   05:47:55   GMT
Server:   Microsoft-IIS/6.0
X-Powered-By:   ASP.NET
Location:   PPst_UserCenter.asp
Content-Length:   140
Content-Type:   text/html
Set-Cookie:   PPst%5FUserName=myname;   path=/
Set-Cookie:   PPst%5FLastIP=221%2E3%2E149%2E10;   path=/
Set-Cookie:   PPst%5FLastTime=2007%2D5%2D23+13%3A42%3A49;   path=/
Set-Cookie:   PPst%5FLevel=1;   path=/
Cache-control:   private


第三步(客户端重定向请求):

GET   http://www.lanniao.org/soft/nod32/PPst_UserCenter.asp   HTTP/1.1
Accept:   image/gif,   image/x-xbitmap,   image/jpeg,   image/pjpeg,   application/x-shockwave-flash,   application/vnd.ms-excel,   application/vnd.ms-powerpoint,   application/msword,   */*
Referer:   http://www.lanniao.org/soft/nod32/PPst_Login.asp
Accept-Language:   zh-cn
Accept-Encoding:   gzip,   deflate
User-Agent:   Mozilla/4.0   (compatible;   MSIE   6.0;   Windows   NT   5.1;   SV1;   (R1   1.5);   .NET   CLR   2.0.50727;   .NET   CLR   1.1.4322;   MAXTHON   2.0)
Host:   www.lanniao.org
Proxy-Connection:   Keep-Alive
Pragma:   no-cache
Cookie:   rtime=3;   ltime=1179899260484;   cnzz_eid=89202487-;   cnzz02=4;   ASPSESSIONIDQCDBSRRA=JGOJIEOBNHCMPHOBPMFMHAPC;   PPst%5FUserName=myname;   PPst%5FLastIP=221%2E3%2E149%2E10;   PPst%5FLastTime=2007%2D5%2D23+13%3A42%3A49;   PPst%5FLevel=1

第四步(服务端应答):

<head> <title> Object   moved </title> </head>
<body> <h1> Object   Moved </h1> This   object   may   be   found   <a   HREF= "PPst_UserCenter.asp "> here </a> . </body>
HTTP/1.1   200   OK
Cache-Control:   private
Date:   Wed,   23   May   2007   05:47:58   GMT
Content-Type:   text/html
Server:   Microsoft-IIS/6.0
X-Powered-By:   ASP.NET
Content-Encoding:   gzip
Vary:   Accept-Encoding
Transfer-Encoding:   chunked


这几步下来没有想到我的界面,问题是出在哪啊?


[解决办法]
先在浏览器里正常登录PPst_UserCenter.asp,用httpwatch记录下登录过程看看


[解决办法]
那你能看到PPst_UserCenter.asp页面的内容吗?是不是显示Object Moved?
[解决办法]
理论上来讲,完全可以模拟http请求登录一个页面,如果不成功的话,一定是某些http头信息设置不正确。如果是我做的话,我会用httpwatch记录下登录过程每一步的信息,然后用程序模拟发送。

另外,不太明白你“用自己的程序劫持IE的请求”的意思。
[解决办法]
有可能,测试一下看
[解决办法]
如果是php,或者asp.net的话,很好办。如果是asp的话就比较麻烦了,可以考虑把二进制数据保存为文件然后用shell解压,或者自己根据gzip压缩算法写个解压函数。
[解决办法]
c++那就更好办了,http://www.codeproject.com/cpp/cgzip.asp

热点排行