コード例 #1
0
ファイル: HttpService.cs プロジェクト: HeavenHeal/AutoLua
        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();
            }
        }
コード例 #2
0
ファイル: ExampleServer.cs プロジェクト: 532100833/HttpServer
        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();
        }
コード例 #3
0
ファイル: HttpService.cs プロジェクト: ShiQiKuangSan/AutoLua
        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();
            }
        }