答案:写了两个测试了一下,自己看看吧
public void GetResponse()
{
StringBuilder strSource = new StringBuilder();
try
{
//WebRequest Wreq = WebRequest.Create("http://www.dev-club.com");
//WebResponse Wresp = Wreq.GetResponse();
Uri myUri = new Uri(this.l_strPageAddress);
HttpWebResponse resp;
HttpWebRequest req =
(HttpWebRequest)WebRequest.Create(myUri);
resp = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream(),Encoding.Default);
string strTemp = "";
while((strTemp = sr.ReadLine()) != null)
{
strSource.Append(strTemp + "\r\n");
}
sr.Close();
}
catch(WebException WebExcp)
{
strSource.Append(WebExcp.Message);
}
this.form.AddMessage(strSource.ToString());
}
public void Socket_GetResponse()
{
IPHostEntry ipinfo = Dns.Resolve(l_strServerAddress);
IPAddress ip = ipinfo.AddressList[0];
IPEndPoint rip = new IPEndPoint(ip,80);
s = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
try
{
this.form.AddMessage("Connecting to "+ip.ToString());
s.Connect(rip);
int bytesRecv = 0;
string output = "";
string temp = "";
byte[] bytes;
this.form.AddMessage("Sending request to "+l_strPageAddress);
string Command = "post " +l_strPageAddress+" HTTP/1.0\r\n";
Command += "Accept:*/*\r\n";
Command += "Accept:text/html\r\n";
Command += "\r\n";
byte[] msg = Encoding.Default.GetBytes(Command);
int intSend = s.Send(msg,msg.Length,0);
this.form.AddMessage("Sent "+intSend.ToString()+" bytes to server");
do
{
bytes = new byte[1024];
bytesRecv = s.Receive(bytes,bytes.Length,SocketFlags.None);
temp = Encoding.Default.GetString(bytes,0,bytesRecv);
this.form.AddMessage(temp);
output += temp;
}
while (bytesRecv>0);
this.form.AddMessage(output);
}
catch(Exception e)
{
this.form.AddMessage(e.Message);
&
上一个:运行时修改Web.config中的元素值 zhenyu(原作)
下一个:关于上下文-2 (转自msdn)