水水水

using JJQ_Model;
using System;
using System.Web;
using System.Web.Mvc;

namespace JJQ2.filter
{

public class MyActionFilter : ActionFilterAttribute//继承ActionFilterAttribute类
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        
        try
        {
            //得到ip
            string ips = IPAddress();
            //得到当前时间
            long Now_time = DateTime.Now.ToFileTime();
            //获取cache里的对应ip的上一时刻时间
            long Get_time = Convert.ToInt64(CacheHelper.GetCache(ips));
            //filterContext.HttpContext.Response.Write("66666");
            if ((Now_time - Get_time) < 900000)
            {

                //ApplicationId;
                HttpContext.Current.Application.Add("kk","6969");
                var ss=HttpContext.Current.Application.Get("kk");
                //实际拦截并跳转到错误友好提示界面
                //filterContext.Result = new RedirectResult("/errView.html");
                //未实际拦截就跳转
                filterContext.HttpContext.Response.Redirect("/errView.html", true);
                return;
                //利用控制器跳转___________________失败!!!!!!!!!
                //errController er = new errController();
                //er.er();
                //if (filterContext.HttpContext.Request.IsAjaxRequest())//判断是否ajax
                //{ 
                //}
            }
            //设置缓存时间2s
            CacheHelper.SetCache(ips, Now_time,TimeSpan.FromSeconds(2));
            //清楚所有cache缓存
            //CacheHelper.RemoveAllCache();
            //继续向下执行!
            base.OnActionExecuting(filterContext);
        }
        catch (Exception ex)
        {
            string err = ex.ToString();
        }
    }




    public static string IPAddress()
    {
        string userIP;
        HttpRequest Request = HttpContext.Current.Request; // ForumContext.Current.Context.Request;// 如果使用代理,获取真实IP
        userIP = Request.UserHostAddress;
        if (string.IsNullOrEmpty(userIP))
        {
            if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != "")
                userIP = Request.ServerVariables["REMOTE_ADDR"];
            else
                userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
        }
        return userIP;
    }
}
知识兔

}

计算机