Changes per PR comments

This commit is contained in:
Pranav K 2019-05-11 06:22:19 -07:00
parent 20982a947d
commit 8a3fdb4b21
No known key found for this signature in database
GPG Key ID: 1963DA6D96C3057A
3 changed files with 10 additions and 12 deletions

View File

@ -125,11 +125,6 @@ namespace Microsoft.AspNetCore.Cors.Infrastructure
return _next(context);
}
return InvokeCore(context, corsPolicyProvider);
}
private Task InvokeCore(HttpContext context, ICorsPolicyProvider corsPolicyProvider)
{
// CORS policy resolution rules:
//
// 1. If there is an endpoint with IDisableCorsAttribute then CORS is not run
@ -191,12 +186,12 @@ namespace Microsoft.AspNetCore.Cors.Infrastructure
}
return EvaluateAndApplyPolicy(context, corsPolicy);
}
private async Task InvokeCoreAwaited(HttpContext context, Task<CorsPolicy> policyTask)
{
var corsPolicy = await policyTask;
await EvaluateAndApplyPolicy(context, corsPolicy);
async Task InvokeCoreAwaited(HttpContext context, Task<CorsPolicy> policyTask)
{
var corsPolicy = await policyTask;
await EvaluateAndApplyPolicy(context, corsPolicy);
}
}
private Task EvaluateAndApplyPolicy(HttpContext context, CorsPolicy corsPolicy)

View File

@ -14,8 +14,10 @@ namespace Microsoft.AspNetCore.Cors.Infrastructure
{
private string _defaultPolicyName = "__DefaultCorsPolicy";
// DefaultCorsPolicyProvider returns a Task<CorsPolicy>. We'll cache the value to be returned alongside
// the actual policy instance to have a separate lookup.
internal IDictionary<string, (CorsPolicy policy, Task<CorsPolicy> policyTask)> PolicyMap { get; }
= new Dictionary<string, (CorsPolicy, Task<CorsPolicy>)>();
= new Dictionary<string, (CorsPolicy, Task<CorsPolicy>)>(StringComparer.Ordinal);
public string DefaultPolicyName
{

View File

@ -11,6 +11,7 @@ namespace Microsoft.AspNetCore.Cors.Infrastructure
/// <inheritdoc />
public class DefaultCorsPolicyProvider : ICorsPolicyProvider
{
private static readonly Task<CorsPolicy> NullResult = Task.FromResult<CorsPolicy>(null);
private readonly CorsOptions _options;
/// <summary>
@ -36,7 +37,7 @@ namespace Microsoft.AspNetCore.Cors.Infrastructure
return result.policyTask;
}
return Task.FromResult<CorsPolicy>(null);
return NullResult;
}
}
}