本文整理汇总了C#中System.Net.WebRequest.End方法的典型用法代码示例。如果您正苦于以下问题:C# WebRequest.End方法的具体用法?C# WebRequest.End怎么用?C# WebRequest.End使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.WebRequest
的用法示例。
在下文中一共展示了WebRequest.End方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: HandleRequest
internal static void HandleRequest(WebRequest request, string content)
{
//var url = this.RequestUrl;
//if (url == "/") url = "index.html";
//var local = Path.Combine(/*WebServer.HtmlDirectory*/ @"C:\Development\Sync\Terraria-s-Dedicated-Server-Mod\tdsm-core\WebInterface\Files", EncapsulatePath(url));
var local = GetEncapsulated(request);
if (local != null && local.Exists)
{
//TODO implement cache
using (var fs = local.OpenRead())
{
var ext = local.Extension.ToLower();
var contentType = "text/html";
if (_contentTypes.ContainsKey(ext)) contentType = _contentTypes[ext];
request.RepsondHeader(200, "OK", contentType, fs.Length);
var buf = new byte[512];
while (fs.Position < fs.Length)
{
var read = fs.Read(buf, 0, buf.Length);
if (read > 0)
{
request.Send(buf, read, SocketFlags.None);
}
else break;
}
}
request.End();
}
else
{
//var segments = request.RequestUrl.Split('/');
if (request.Path != null)
if (_pages.ContainsKey(request.Path))
{
if (_pages[request.Path].CanProcess(request))
{
_pages[request.Path].ProcessRequest(request);
request.End();
}
else
{
request.RepsondHeader(404, "Not Found", "text/html", 0);
request.End();
}
}
}
}