ในที่สุดฉันมีเวลาเรียนรู้สิ่งใหม่ ๆ
การปรับปรุง ASP นั้นใหญ่เกินไป
มีอีกมาก เรามาพูดเรื่องไร้สาระน้อยลงดูที่ซอร์สโค้ด
< % @Page Language = "C#" %>
< % @assembly name = "system.net" %>
< % @import namespace = "system.net.sockets" %>
< % @import namespace = "System.Text" %>
< % @import namespace = "system.io" %>
< % @import namespace = "System.Collections" %>
<ภาษาสคริปต์ = "C#" runat = "เซิร์ฟเวอร์">
เป็นโมฆะ doQuery (ผู้ส่งวัตถุ EventArgs E)
-
สตริง strongomain = txtdomain.text;
char [] chsplit = {'.'};
สตริง [] arrduin = stromain.split (chsplit);
int nlenth = arrdomain [1] .length;
Hashtable Table = new hashtable ();
table.add ("de", "whois.denic.de");
table.add ("Be", "Whois.dns.be");
table.add ("gov", "Whois.nic.gov");
table.add ("mil", "Whois.nic.mil");
String Strserver;
// ถ้าส่วนท้ายของ DomainName เป็น CN เซิร์ฟเวอร์เป็น CNNIC มิฉะนั้นจะเป็น Networksolutions
if (arrdomain [arrdomain.length -1] == "cn")
-
strserver = "159.226.6.139";
-
อื่น
-
strserver = "Whois.networksolutions.com";
-
if (table.containskey (arrdomain [1]))
-
strserver = ตาราง [arrdomain] [1]]
-
อื่นถ้า (nlength == 2)
-
// Ltter TLD เป็นค่าเริ่มต้นที่จะสุกในยุโรปเสมอ
strserver = "whois.ripe.net";
-
สตริง strresponse;
bool bsuccess = dowhoislookup (stromain, strserver, out strresponse);
ถ้า (bsuccess)
-
txtresult.text = strresponse;
-
อื่น
-
txtresult.text = "การค้นหาล้มเหลว";
-
-
Bool Dowhoislokup (String stromain, String strserver, out String strresponse)
-
strresponse = "ไม่มี";
bool bsuccess = false;
tcpClient tcpc = new tcpClient ();
if (0 == tcpc.connect (strserver, 43))
-
stromain += "/r/n";
ไบต์ [] arrdomain = encoding.ascii.getBytes (stromain.tocharray ());
พยายาม
-
สตรีม s = tcpc.getStream ();
s.write (arrdomain, 0, strdomain.length);
StreamReader SR = New StreamReader (tcpc.getStream (), encoding.ascii);
StringBuilder strBuilder = new StringBuilder ();
ในขณะที่ (-1! = sr.peek ())
-
strbuilder.append (sr.readline ()+"<br>");
-
tcpc.close ();
bsuccess = true;
strresponse = strbuilder.toString ();
-
จับ (ข้อยกเว้น e)
-
strresponse = e.toString ();
-
กลับ BSUCCESS;
-
อื่น
-
strresponse = "ไม่สามารถเชื่อมต่อกับ WHOIS Server";
กลับเท็จ;
-
กลับเท็จ;
-
</script>
<html>
<head>
<title> </title>
</head>
<body>
<form runat = "เซิร์ฟเวอร์">
ชื่อโดเมน: www
<ASP: ปุ่ม ID = "BTNQUERY" ONCLICK = "DOQUERY" TEXT = "QUERY!"
<br> <hr> <br>
<asp: label id = "txtresult" runat = "เซิร์ฟเวอร์" />>
</form>
</body>
</html>