在Owin中启用CORS
我一直在尝试在运行在OWIN上的ASP.Net应用程序中启用CORS 这是我的密码:在Owin中启用CORS,cors,owin,nancy,Cors,Owin,Nancy,我一直在尝试在运行在OWIN上的ASP.Net应用程序中启用CORS 这是我的密码: public class Startup { public void Configuration(IAppBuilder app) { //Enable CORS //Use JWTOwinAuth middleware //Use Nancy framework app .UseCors(Cors
public class Startup
{
public void Configuration(IAppBuilder app)
{
//Enable CORS
//Use JWTOwinAuth middleware
//Use Nancy framework
app
.UseCors(CorsOptions.AllowAll)
.Use(typeof(JwtOwinAuth))
.UseNancy();
}
}
CorsOptions.AllowAll似乎不起作用,我得到“请求的资源上不存在‘访问控制允许源’头”
我已经尝试了网络上的所有建议,但解决方案仍然无效。您需要做两件事
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
var cors = new EnableCorsAttribute("*", "*", "*");
config.EnableCors(cors);
........
(你做的这一件)
我知道这很旧,但您可以检查的另一件事是,您的web.config正在使用以下2个应用程序设置调用owin启动:
<add key="owin:AutomaticAppStartup" value="true" />
<add key="owin:AppStartup" value="MyCompany.MyProduct.MyProject.Startup, MyCompany.MyProduct.MyProject" />
对于web api,是否要使用cors?是的,我正在appharbor中托管此web服务,并且一个“前端”web应用程序正在连接到此“web服务”。但是,前端未遇到访问控制允许源。我的第一个实现是使用WebApp.Start(url),这是一个控制台应用程序,它运行良好。我不确定我的实现是否正确,但我尝试了这个建议。添加了WebApiConfig类,但仍然遇到“否”访问控制允许源publicstaticvoidregister(HttpConfiguration-config){var cors=newenableCorsattribute(“*”,“*”,“*”,“*”);config.EnableCors(cors);}
最后,我能够使它工作。我的aspnet程序似乎没有调用我的WebApiConfig类的实现。所以我添加了Global.asax并从中调用了WebApiConfig。在Global.asax中,公共类Global:System.Web.HttpApplication{protectedvoid Application_Start(objectsender,EventArgs e){GlobalConfiguration.Configure(WebApiConfig.Register);}}
。
<add key="owin:AutomaticAppStartup" value="true" />
<add key="owin:AppStartup" value="MyCompany.MyProduct.MyProject.Startup, MyCompany.MyProduct.MyProject" />