如何解决CORS - 如何启用一系列端口.Net Core 3.1
如何在一个语句中为某个站点允许一系列端口?
这是我的代码,我想将所有五个放在一个更智能的语句中。
有人可以帮忙吗?
options.AddPolicy("SecurePolicy",builder =>
{
builder.WithOrigins("http://localhost:8080","http://localhost:8081","http://localhost:8082","http://localhost:8083","http://localhost:8084")
.SetIsOriginAllowedToAllowWildcardSubdomains();
builder.AllowAnyHeader();
builder.AllowAnyMethod();
});
解决方法
您可以在 CorsPolicyBuilder
上创建一个扩展方法来为您生成这些 URL:
public static CorsPolicyBuilder WithOrigins(this CorsPolicyBuilder builder,string base,params int[] ports)
{
return builder.WithOrigins(ports.Select(p => $"{base}:{p}").ToArray());
}
然后你可以像这样使用它:
options.AddPolicy("SecurePolicy",builder => builder
.WithOrigins("http://localhost",8080,8081,8082,8083,8084)
.SetIsOriginAllowedToAllowWildcardSubdomains()
.AllowAnyHeader()
.AllowAnyMethod());
或者,您也可以只传入第一个和最后一个端口,并让扩展方法在端口上循环。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。