コード例 #1
0
 public override Task Invoke(IOwinContext context)
 {
     if (context.Request.Path == PathString.Empty || context.Request.Path == new PathString("/"))
     {
         return Task.Run(() =>
         {
             var response = new OwinResponse(context.Environment) {StatusCode = 502};
             response.Redirect(_url);
         });
     }
     return Next.Invoke(context);
 }
コード例 #2
0
        public override Task ProcessRequest(HostContext context)
        {
            string redirectWhen = "____Never____";

            if (!String.IsNullOrEmpty(context.Request.QueryString["redirectWhen"]))
            {
                redirectWhen = context.Request.QueryString["redirectWhen"];
            }

            var owinRequest = new OwinRequest(context.Environment);

            if (owinRequest.Path.Value.Contains("/" + redirectWhen))
            {
                var response = new OwinResponse(context.Environment);

                // Redirect to an invalid page
                response.Redirect("http://" + owinRequest.Host);

                return TaskAsyncHelper.Empty;
            }

            return base.ProcessRequest(context);
        }