【发布时间】:2018-10-13 08:39:48
【问题描述】:
使用有什么区别
app.UseCors(builder => builder.WithOrigins("*"));
和
app.UseCors(builder => builder.AllowAnyOrigin());
我假设“*”是任何来源的通配符,并且 这些应该是等价的。如果我错了,请纠正我。
【问题讨论】:
标签: asp.net-core cors .net-core
使用有什么区别
app.UseCors(builder => builder.WithOrigins("*"));
和
app.UseCors(builder => builder.AllowAnyOrigin());
我假设“*”是任何来源的通配符,并且 这些应该是等价的。如果我错了,请纠正我。
【问题讨论】:
标签: asp.net-core cors .net-core
你的两个方法都将*添加为原点,但builder.AllowAnyOrigin()也会清除builder中所有其他注册的原点,所以最好使用它。
来自source code:
public CorsPolicyBuilder WithOrigins(params string[] origins)
{
foreach (var req in origins)
{
_policy.Origins.Add(req);
}
return this;
}
public CorsPolicyBuilder AllowAnyOrigin()
{
_policy.Origins.Clear();
_policy.Origins.Add(CorsConstants.AnyOrigin);
// `CorsConstants.AnyOrigin` conts has `*` as value
return this;
}
【讨论】: