清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
using System; using System.IO; using System.Net; using System.Text; using System.Threading; class MainClass { private static int maxRequestHandlers = 5; private static int requestHandlerID = 0; private static HttpListener listener; private static void RequestHandler(IAsyncResult result) { try { HttpListenerContext context = listener.EndGetContext(result); StreamWriter sw = new StreamWriter(context.Response.OutputStream, Encoding.UTF8); sw.WriteLine("<html><head><title>C# </title>"); sw.WriteLine("</head><body>" + result.AsyncState); sw.WriteLine("</body></html>"); sw.Flush(); context.Response.ContentType = "text/html"; context.Response.ContentEncoding = Encoding.UTF8; context.Response.Close(); } catch (ObjectDisposedException) { Console.WriteLine(result.AsyncState); } finally { if (listener.IsListening) { listener.BeginGetContext(RequestHandler, "RequestHandler_" + Interlocked.Increment(ref requestHandlerID)); } } } public static void Main(string[] args) { using (listener = new HttpListener()) { listener.Prefixes.Add("http://localhost:8080/"); listener.Start(); for (int count = 0; count < maxRequestHandlers; count++) { listener.BeginGetContext(RequestHandler, "RequestHandler_" + Interlocked.Increment(ref requestHandlerID)); } Console.WriteLine("Press Enter to stop the HTTP Server"); Console.ReadLine(); listener.Stop(); listener.Abort(); } } }