筛选器中判断Action有没有AllowAnonymous标签
电脑版发表于:2020/12/9 9:38
                    用于判断Action有没有AllowAnonymous标签
//用于判断Action有没有AllowAnonymous标签
private bool HasAllowAnonymous(AuthorizationFilterContext context)
{
    var filters = context.Filters;
    for (var i = 0; i < filters.Count; i++)
    {
        if (filters[i] is IAllowAnonymousFilter)
        {
            return true;
        }
    }
    var endpoint = context.HttpContext.GetEndpoint();
    if (endpoint?.Metadata?.GetMetadata<IAllowAnonymous>() != null)
    {
        return true;
    }
    return false;
}