private void OnExecuteRoute(HttpRequest request, HttpResponse response) { var route = ServiceRoute.Parse(request); var module = _modules.FirstOrDefault(m => m.SearchRoute(route)); if (module == null) { response.Error("地址不存在").Send(); return; } var result = module.ExecuteRoute(route, request); if (!result.Success) { response.FromText(result.Message.ToString()).Send(); return; } if (result.GetType() == typeof(JsonSuccess) && result.Result != null) { response.FromJson(result.Result).Send(); } else { response.FromText(result.Result.ToString()).Send(); } }
public override void OnGet(HttpRequest request, HttpResponse response) { ///链接形式1:"http://*****:*****@"\").Replace("\\..", "").TrimStart('\\'); string requestFile = Path.Combine(ServerRoot, requestURL); //判断地址中是否存在扩展名 string extension = Path.GetExtension(requestFile); //根据有无扩展名按照两种不同链接进行处 if (extension != "") { //从文件中返回HTTP响应 response = response.FromFile(requestFile); } else { //目录存在且不存在index页面时时列举目录 if (Directory.Exists(requestFile) && !File.Exists(requestFile + "\\index.html")) { requestFile = Path.Combine(ServerRoot, requestFile); var content = ListDirectory(requestFile, requestURL); response = response.SetContent(content, Encoding.UTF8); response.Content_Type = "text/html; charset=UTF-8"; } else { //加载静态HTML页面 /* * requestFile = Path.Combine(requestFile, "index.html"); * response = response.FromFile(requestFile); */ //response=response.SetContent ( "<html><body>你好!你是想访问地址:"+requestURL+"</body></html>",Encoding.UTF8); response = response.FromText("<html><body>你好!你是想访问地址:" + requestURL + "</body></html>"); response.Content_Type = "text/html; charset=UTF-8"; } } //发送HTTP响应 response.Send(); }
private void OnExecuteRoute(HttpRequest request, HttpResponse response) { var route = ServiceRoute.Parse(request); var module = _modules.FirstOrDefault(m => m.SearchRoute(route)); if (module == null) { response.Error("地址不存在").Send(); return; } var result = module.ExecuteRoute(route, request); if (result is IJsonResult) { response.FromJson(result).Send(); } else if (result is ActionResult actionResult) { response.FromText(actionResult.Data.ToString()).Send(); } }