兩個獲取http頁面的c#函數
2007/1/19 23:04:40
Author:bigeagle From:Internet
一個用C#寫的windows應用程序,作用嘛,就是對asp程序已知的20種漏洞進行掃描,顯示源程序。在這個應用程序中用到兩種獲得http頁面的方法,一種是直接用httpwebrequest類,而另一種是同服務器通過tcp/ip建立socket連接,直接查詢端口80 , 為此我寫了以下兩個函數,第一個比較簡單,參數只有一個,就是要求的url , 另外一個比較復雜,也很通用,不僅可以請求http頁面,還可以和其他端口通信,如端口43的whois,端口25的smtp,端口21的ftp甚至pop3等等,三個參數分別是主機名,請求命令和端口。好了,看程序吧。
//獲取http頁面函數
private string Get_Http(string a_strUrl)
{
string strResult ;
HttpWebRequest myReq = (HttpWebRequest)
WebRequestFactory.Create(a_strUrl) ;
try
{
HttpWebResponse HttpWResp = (HttpWebResponse)myReq.GetResponse();
Stream myStream = HttpWResp.GetResponseStream () ;
StreamReader sr = new StreamReader(myStream , Encoding.Default);
StringBuilder strBuilder = new StringBuilder();
while (-1 != sr.Peek())
{
strBuilder.Append(sr.ReadLine()+"\r\n");
}
strResult = strBuilder.ToString();
}
catch(Exception exp)
{
strResult = "錯誤:" + exp.Message ;
}
return strResult ;
}
//通過同server建立tcp/ip連接,發送socket命令
private string Get_Socket_Request(string a_strServer , string a_strRequest , Int32 a_intPort)
{
//Set up variables and String to write to the server
Encoding ASCII = Encoding.Default ;
string Get = a_strRequest + "Connection: Close\r\n\r\n";
//string Get =
Byte[] ByteGet = ASCII.GetBytes(Get);
Byte[] RecvBytes = new Byte[256];
String strRetPage = null;
// IPAddress and IPEndPoint represent the endpoint that will
// receive the request
IPAddress hostadd = DNS.Resolve(a_strServer.Substring(7 ,a_strServer.Length - 7));
IPEndPoint EPhost = new IPEndPoint(hostadd, a_intPort);
//Create the Socket for sending data over TCP
Socket s = new Socket(AddressFamily.AfINet, SocketType.SockStream,
ProtocolType.ProtTCP );
// Connect to host using IPEndPoint
if (s.Connect(EPhost) != 0)
{
strRetPage = "Unable to connect to host";
return strRetPage;
}
// Sent the GET text to the host
s.Send(ByteGet, ByteGet.Length, 0);
// Receive the page, loop until all bytes are received
Int32 bytes = s.Receive(RecvBytes, RecvBytes.Length, 0);
strRetPage = strRetPage + ASCII.GetString(RecvBytes, 0, bytes);
while (bytes > 0)
{
bytes = s.Receive(RecvBytes, RecvBytes.Length, 0);
strRetPage = strRetPage + ASCII.GetString(RecvBytes, 0, bytes);
}
return strRetPage ;
}
返回列表
返回首頁
主站蜘蛛池模板:
最近中文字幕电影大全免费版|
精品国产不卡一区二区三区|
国产精品自拍亚洲|
上原瑞穗最全番号|
日本男人操女人|
亚洲人成电影网站色|
渣男渣女抹胸渣男渣女app|
动漫人物差差差动漫网站|
青青国产在线视频|
国产欧美高清在线观看|
91精东果冻蜜桃星空麻豆|
女人是男人的未来1分29分|
免费观看国产小粉嫩喷水|
麻豆回家视频区一区二|
国产精品久久国产三级国不卡顿
|
国产精品日韩欧美亚洲另类|
jizzzz中国|
成人av鲁丝片一区二区免费|
久久99热只有频精品8|
日韩内射美女片在线观看网站|
亚洲不卡中文字幕|
欧美成人精品第一区二区三区
|
亚洲爆乳少妇无码激情|
男女猛烈无遮挡午夜视频|
又嫩又硬又黄又爽的视频|
2022国产成人福利精品视频|
天天操天天操天天射|
中文字幕中韩乱码亚洲大片
|
黄色网站小视频|
婷婷六月久久综合丁香76|
中文无遮挡h肉视频在线观看|
日韩一区二区三区无码影院|
亚洲一区二区三区久久|
欧美成人www在线观看网页|
亚洲第一色在线|
激情在线小说图片视频区|
便器调教(肉体狂乱)小说|
精品一区二区三区在线观看|
国产手机精品一区二区|
怡红院成人在线|
好吊妞在线新免费视频|