[棘手的问题]HTTP发送过程,与回复机制
我想做了一个软件,类似于能够自动完成别人ASP网站上的行为,就是类似的以Client端发送Post等请求来完成作业,现在有一些很棘手的问题
--------------------------------------------------
1.怎么使我能够得知是否Server端的信息,比如该站点人数众多
[就是那些Server端的错误],应为我想用循环来实现多次的请求来保证成功的执行.我的思路是分析WebResponse(我用C#的)对象的返回代码,是不时有专门的反馈信息(如,200表示成功).如果有的话最好教教我
2.我不懂POST请求的发送机制,格式怎么样,用什么来发送(最好是C#里面的),比如说我要把Name="XXX",Password="XXX"放在
我的一个FORM里面,怎么发出去
3.还有反馈机制,分析代码是分析ASCII好呢,还是Encoding为普通格式来看为好
4.我知道有一类人叫"赚客"专门干类似的事情,不知道有没有专门的论坛来学学....
------------------------------------------------
小弟谢过大家了...............
问题点数:60、回复次数:4Top
1 楼Mittermeyer(疾风之狼)回复于 2003-11-03 08:55:41 得分 30
老兄真够厉害的,一个帖子问这么多问题。
1、HttpWebRequest.StatusCode。
2、需要创建一个NetworkCredential实例
3、这个应该看你的应用吧,一般来说肯定不会分析编过码的数据。最好反馈数据时格式化的,例如XML就是现在比较流行的选择。
Top
2 楼wwonion(洋葱)回复于 2003-11-03 09:18:08 得分 30
1.try
2.
在项目中添加对System.Web.Dll的引用,然后using System.Web
下面是个简单的例子:
WebRequest req = WebRequest.Create( uri );
req.Method = "POST";
byte[] postData = System.Text.Encoding.Default.GetBytes( "parameter1=value1¶meter2=value2" );
req.ContentLength = postData.Length;
Stream postStream = req.GetRequestStream();
postStream.Write(postData, 0, postData.Length);
postStream.Close();
System.Data.DataSet ds;
WebResponse res = req.GetResponse();
StreamReader reader = new StreamReader( res.GetResponseStream(),System.Text.Encoding.Default );
string html = reader.ReadToEnd(); //返回的Html
reader.Close();
res.Close();
3.xml
4. 我没有!Top
3 楼Jacksonzhou(Jackson)回复于 2003-11-03 11:39:24 得分 0
我今天我上试试看,先谢谢大家,
to狼
1.NetworkCredential实例怎么写啊
2.但是返回的不是XML代码啊
to洋葱
返回的不是XML啊,(POST是SOAP请求?)
Top
4 楼Mittermeyer(疾风之狼)回复于 2003-11-03 12:13:48 得分 0
不要意思,是我看错了,你不是要模拟一个用户访问你的Website,而是把用户的输入作为HTTP的请求发送到服务端,那么2楼是正解。
SOAP是一种建立在HTTP上的机制,HTTP标准中定义了一些基本的行为,最常用的就是GET和POST,一般HTML中FORM的提交就可能是这两种方式之一,相信你一定很熟悉。如果返回值不是XML格式,那么只有自己具体问题具体分析了。
Top




