完蛋了,用HttpWebResponse后原来的数据没有了

chenlm 2009-06-24 05:16:09
有三个页面
login.asp --登陆验证,取得cookie

a.asp--取得ID列表,然后通过这个ID去b.asp取数据

b.asp?id=xxx

b.asp?id=1这样出来页面后,页面有一个文本框text1,

text1中的数据为通过该id取得的数据库数据

还有一个按钮,用于保存该文本框数据(假设被修改,post到另外页面去执行保存)

我取得cookie以及id列表后,想得到b.asp页面的html代码进行分析,却发现遇到大问题,让我哭死

遇到的问题是这样,循环ID列表后所有的text1对应的数据库数据段都变成空了!!

实在想不通阿,我又没调用保存的页面
关键代码如下


public static string GetResponsedData(string datacontent, CookieContainer c, string u)
{
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] data = encoding.GetBytes(datacontent);
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(u);
myRequest.Method = "POST"; //改为GET并去掉datacontent参数,数据倒是不会没有
myRequest.ContentType = "application/x-www-form-urlencoded ";
myRequest.AllowAutoRedirect = true;
myRequest.CookieContainer = c;
Stream newStream = myRequest.GetRequestStream();
newStream.Write(data, 0, data.Length);
newStream.Close();
HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
StreamReader reader;
reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default);
string content = reader.ReadToEnd();
reader.Close();
myResponse.Close();
return content;
}

string s;
//param:id=1,u=b.asp
//param为空,u=b.asp?id=1
//上述2种结果都一样,数据没了
for(int i;i<idlist.count;i++)
{
s+=GetResponsedData(param,c,u)
}


...全文
87 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenlm 2009-06-25
  • 打赏
  • 举报
回复
异站点,我用aspx去读网页的document是因为我写的这个aspx也要放到我自己的站点提供给别人看,目的是看了后发现b.aspx中如有不规范的及时修正

实现是可以实现的,就用我提问里的代码就可以了,只要把post改成get然后再稍微修改下就可以了.
仗剑逗二哈 2009-06-24
  • 打赏
  • 举报
回复
你是不是想做FLASH游戏外挂啊?
wjq 2009-06-24
  • 打赏
  • 举报
回复
你怎么能搞个aspx去取其他aspx里的数据,是同站点还是异站点。
你该做的,最简单的方法,写个WinForm程序,里面用WebBrowser控件访问那写页面,访问到b.aspx的时候,取document里的数据。来分析,或者用dom模型来查找WebBrowser里的内容,找到这个文本框,并取其数据。我不认为搞个Aspx去取别的aspx里的数据可以实现,或者说你难以模拟一个正常访问b.aspx的客户端,所以难以取到数据。
chenlm 2009-06-24
  • 打赏
  • 举报
回复
因为可能一天录入100条数据,我不能这样每条去检查下阿,这样会死人的
chenlm 2009-06-24
  • 打赏
  • 举报
回复
我要开发一个aspx页面,去检查别人录入数据库的数据是否正确,符合规范

虽然我有权限去登陆login.aspx并访问b.aspx查看他们录入情况,但工作量非常大



login.aspx,b.aspx我无法修改也无法访问其数据库,只能从页面抓取
wjq 2009-06-24
  • 打赏
  • 举报
回复
也就是说你是开发一个类似测试工具的东西?这些检查你要在服务器端做?客户端做行么?因为这些都不是你做的,你也无权访问~
chenlm 2009-06-24
  • 打赏
  • 举报
回复
哦,不好意思,login.aspx,a.aspx,b.aspx都不是我开发的,数据库也无法访问

我的目的是通过网页抓取的方式,查看b.aspx中对应ID出来的text1中的数据是否符合规定要求
evaa006 2009-06-24
  • 打赏
  • 举报
回复
wjq 2009-06-24
  • 打赏
  • 举报
回复
1:没看明白你想干啥
2:没看明白你用的是ASP还是ASP.NET
3:你最好表述一下你最终目的是啥
源码下载地址: https://pan.quark.cn/s/a4b39357ea24 【运算单元构造实验报告】运算单元是计算机硬件系统中的关键构成部分,主要承担执行算术运算和逻辑运算的任务。在本次实验中,我们着重探讨了带有累加器的运算单元的设计,涵盖了溢出识别、有符号数值与无符号数值运算的差异性,以及采用补码方式进行的加法与减法运算的实现机制。 一、实验目标 1. 掌握运算单元的基本构造,理解带有累加器的运算单元的具体实现途径。 2. 学习并领会溢出检测的机制,能够设计并构建溢出检测电路,用以判定运算结果是否超出了数据类型的表示范畴。 3. 明辨有符号数值和无符号数值运算的不同特性,把握它们在运算过程中各自的处理方法。 4. 熟练掌握基于补码方式的加法与减法运算的执行,理解补码形式下的溢出判定准则。 5. 熟悉运算单元内部的数据传输路线,明晰数据在运算过程中的流转路径。 6. 设计一个能够支持有符号数值与无符号数值运算、补码加法/减法运算以及有符号数值溢出检测的运算单元电路。 二、实验仪器 采用JZYL—Ⅱ型计算机组成原理实验装置,配备2片74181运算单元芯片作为算术逻辑单元(ALU),2片74LS373用作八位D型锁存器,并辅以一些基础门电路和多路选择器来完成电路设计。 三、实验内容 1. 运用片74181构建一个8位运算单元,负责处理数据的高4位与低4位。 2. 设计并实现溢出检测电路,确保在有符号数值与无符号数值的加法运算中均能准确识别溢出状况。 3. 通过74LS373增加累加器功能,使运算结果得以保存。 4. 将所有设计整合,利用多路选择器来支持有符号数值与无符号数值的加法/减法运算。 四、实验电路 1. 8位运算单元由2片74181构成,通过控制...

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧