private void AjaxUrl_BeginRequest(object sender, EventArgs e) { HttpContext context = ((HttpApplication)sender).Context; string requestPath = context.Request.Path.Trim('/').ToLower(); if (requestPath.Contains("ajax/")) {//符合ajax请求的内容 string[] controls = requestPath.Substring(0, requestPath.IndexOf('?')).Split('/'); context.Response.ContentType = "text/plain"; HttpRequest Request = context.Request; HttpResponse Response = context.Response; //防止数据泄露,以后可以去掉 if (Request.RequestType.Trim().ToLower() == "get" && controls[1] != "gloab" && controls[1] != "checkcode") { HandlerResponse hresult = new HandlerResponse { Result = -1, Message = "不支持GET请求" }; Response.Write(hresult.ToString()); } else { /*control的操作对象*/ string handlerName = controls[1]; if (string.IsNullOrEmpty(handlerName)) { return; } AppHandlerManager.ExecuteHandler(handlerName, HttpContext.Current, controls[2]); } context.ApplicationInstance.CompleteRequest(); } }
public void ProcessRequest(HttpContext context) { try { context.Response.ContentType = "text/plain"; HttpRequest Request = context.Request; HttpResponse Response = context.Response; //防止数据泄露,以后可以去掉 if (Request.RequestType.Trim().ToLower() == "get" && Request.QueryString["controller"] != "gloab" && Request.QueryString["controller"] != "checkcode") { HandlerResponse hresult = new HandlerResponse { Result = -1, Message = "不支持GET请求" }; Response.Write(hresult.ToString()); } else { string handlerName = Request.Params["controller"]; if (string.IsNullOrEmpty(handlerName) && string.IsNullOrEmpty(Request.QueryString["controller"])) { return; } AppHandlerManager.ExecuteHandler(handlerName, HttpContext.Current, Request.QueryString["action"]); } context.ApplicationInstance.CompleteRequest(); } catch (Exception ex) { if (ex is ThreadAbortException) { } Logger.CurrentLog.Error(ex.Message, ex); } }