对比新文件 |
| | |
| | | 锘縰sing Microsoft.Extensions.DependencyInjection; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Core.Helper; |
| | | |
| | | namespace WIDESEA_Core.Extensions |
| | | { |
| | | /// <summary> |
| | | /// Cors 璺ㄥ煙 |
| | | /// </summary> |
| | | public static class CorsSetup |
| | | { |
| | | /// <summary> |
| | | /// 璺ㄥ煙 |
| | | /// </summary> |
| | | /// <param name="services"></param> |
| | | /// <exception cref="ArgumentNullException"></exception> |
| | | public static void AddCorsSetup(this IServiceCollection services) |
| | | { |
| | | if (services == null) throw new ArgumentNullException(nameof(services)); |
| | | |
| | | services.AddCors(c => |
| | | { |
| | | if (!AppSettings.app(new string[] { "Cors", "EnableAllIPs" }).ObjToBool()) |
| | | { |
| | | c.AddPolicy(AppSettings.app(new string[] {"Cors", "PolicyName" }), |
| | | |
| | | policy => |
| | | { |
| | | policy |
| | | .WithOrigins(AppSettings.app(new string[] { "Cors", "IPs" }).Split(',')) |
| | | .AllowAnyHeader()//Ensures that the policy allows any header. |
| | | .AllowAnyMethod(); |
| | | }); |
| | | } |
| | | else |
| | | { |
| | | //鍏佽浠绘剰璺ㄥ煙璇锋眰 |
| | | c.AddPolicy(AppSettings.app(new string[] { "Cors", "PolicyName" }), |
| | | policy => |
| | | { |
| | | policy |
| | | .SetIsOriginAllowed((host) => true) |
| | | .AllowAnyMethod() |
| | | .AllowAnyHeader() |
| | | .AllowCredentials(); |
| | | }); |
| | | } |
| | | |
| | | }); |
| | | } |
| | | } |
| | | } |