/// <summary>
/// 基本验证Attribtue,用以Action的权限处理
/// </summary>
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class AuthorValidationAttribute : ActionFilterAttribute
{
/// <summary>
/// 是否忽略设置,True:是,False:否
/// 默认Flase
/// </summary>
private bool Ignore { get; set; }
/// <summary>
/// 是否忽略ajax方式设置,True:是,False:否
/// </summary>
/// <param name="ignore">默认Flase</param>
public AuthorValidationAttribute(bool ignore = false)
{
Ignore = ignore;
}
/// <summary>
/// 检查用户是否有该Action执行的操作权限
/// </summary>
/// <param name="actionContext"></param>
public override void OnActionExecuting(HttpActionContext actionContext)
{
base.OnActionExecuting(actionContext);
if (Ignore == false)
{
var access_token = HttpContext.Current.Request["access_token"];
if (new BaseApiController().ValidToke(access_token) == false)
{
var jsonData = new Models.ResultDto()
{
result = 0,
errcode = "40000",
msg = "无效的access_token值____"
};
var resp = new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new StringContent(
JSONhelper.ToJson(jsonData),
Encoding.GetEncoding("UTF-8"),
"application/json")
};
actionContext.Response = resp;
}
}
}
/// 基本验证Attribtue,用以Action的权限处理
/// </summary>
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class AuthorValidationAttribute : ActionFilterAttribute
{
/// <summary>
/// 是否忽略设置,True:是,False:否
/// 默认Flase
/// </summary>
private bool Ignore { get; set; }
/// <summary>
/// 是否忽略ajax方式设置,True:是,False:否
/// </summary>
/// <param name="ignore">默认Flase</param>
public AuthorValidationAttribute(bool ignore = false)
{
Ignore = ignore;
}
/// <summary>
/// 检查用户是否有该Action执行的操作权限
/// </summary>
/// <param name="actionContext"></param>
public override void OnActionExecuting(HttpActionContext actionContext)
{
base.OnActionExecuting(actionContext);
if (Ignore == false)
{
var access_token = HttpContext.Current.Request["access_token"];
if (new BaseApiController().ValidToke(access_token) == false)
{
var jsonData = new Models.ResultDto()
{
result = 0,
errcode = "40000",
msg = "无效的access_token值____"
};
var resp = new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new StringContent(
JSONhelper.ToJson(jsonData),
Encoding.GetEncoding("UTF-8"),
"application/json")
};
actionContext.Response = resp;
}
}
}