.Net Core Cors跨域
程序员文章站
2022-04-04 10:57:39
一、Startup类 在ASP.NET Core应用程序中,使用一个按约定Startup命名的类Startup,在Program.cs中使用WebHostBuilderExtensions UseStartup 方法指定类,但通常使用系统默认的startup,可以通过startu ......
一、startup类
在asp.net core应用程序中,使用一个按约定startup
命名的类startup
,在program.cs中使用webhostbuilderextensions usestartup <tstartup>方法指定类,但通常使用系统默认的startup,可以通过startup的构造函数进行依赖注入,startup类中必须包含configure方法同时可以根据实际情况添加configureservices方法,这两个方法均在应用程序运行时被调用。startup 类的 执行顺序:构造 -> configureservices ->configure
configureservices方法:主要用于服务配置,比如依赖注入(di)的配置,使用时该方法必须在configure方法之前
configure方法:用于应用程序响应http请求,通过向iapplicationbuilder实例添加中间件组件来配置请求管道
二、 跨域设置
在startup类的configureservices方法配置
1 readonly string myallowspecificorigins = "_myallowspecificorigins"; 2 public void configureservices(iservicecollection services) 3 { 4 //配置跨域 5 services.addcors(options => 6 { 7 options.addpolicy(myallowspecificorigins, builder => builder.allowanyorigin().allowanyheader() 8 .allowanymethod()); 9 }); 10 } 11 public void configure(iapplicationbuilder app, iwebhostenvironment env) 12 { 13 app.usecors(myallowspecificorigins); 14 15 app.useendpoints(endpoints => 16 { 17 endpoints.mapcontrollers().requirecors(myallowspecificorigins); 18 }); 19 }