我在Web api项目中遇到了CORS的麻烦,突然CORS停止工作,无论我做什么,我总是会收到CORS错误。
我尝试的所有操作如下:
在startup.css中使用app.UseCors(CorsOptions.Allowall)
public void Configuration(IAppBuilder app)
{
app.UseCors(CorsOptions.AllowAll);
HttpConfiguration config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
ConfigureOAuth(app);
app.UseWebApi(config);
}
在WebApiConfig.cs中启用cors
public static void Register(HttpConfiguration config)
{
config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Filters.Add(new CheckAuthorization());
var jsonFormatter = config.Formatters.OfType<JsonMediaTypeFormatter>().First();
jsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
}
在GrantResourceOwnerCredentials方法中添加标头
context.OwinContext.Response.Headers.Add(“ Access-Control-Allow-Origin”,new [] {“ *”});
在web.config文件中添加标题。
使用MatchEndpoint方法添加标题。
我总是遇到相同的错误:
我不知道还能做什么,有什么建议吗?
谢谢