C# 如何在odata中启用CORS?
我按照以下步骤解决CORS问题 1.使用nuget安装Microsoft.AspNet.WebApi.Cors 2.在WebApiConfig.cs中添加下面的代码C# 如何在odata中启用CORS?,c#,api,cors,odata,C#,Api,Cors,Odata,我按照以下步骤解决CORS问题 1.使用nuget安装Microsoft.AspNet.WebApi.Cors 2.在WebApiConfig.cs中添加下面的代码 config.EnableCors(new EnableCorsAttribute("*", "*", "*")); 大多数API都可以工作。只有ODataAPI仍然存在CORS问题 如何解决ODataAPI中的CORS问题 编辑: 在Global.asax中输入下面的代
config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
大多数API都可以工作。只有ODataAPI仍然存在CORS问题
如何解决ODataAPI中的CORS问题
编辑:
在Global.asax中输入下面的代码后,它就可以工作了
protected void Application_BeginRequest(object sender, EventArgs e)
{
if (Context.Request.Path.Contains("odata/") && Context.Request.HttpMethod == "OPTIONS")
{
Context.Response.AddHeader("Access-Control-Allow-Origin", Context.Request.Headers["Origin"]);
Context.Response.AddHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
Context.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST PUT, DELETE, OPTIONS");
Context.Response.AddHeader("Access-Control-Allow-Credentials", "true");
Context.Response.End();
}
}
查看此处,其中显示您可以尝试添加:
var cors = new EnableCorsAttribute(
"http://localhost:7122/",
"*",
"*",
"DataServiceVersion, MaxDataServiceVersion"
);
config.EnableCors(cors);
查看此处,其中显示您可以尝试添加:
var cors = new EnableCorsAttribute(
"http://localhost:7122/",
"*",
"*",
"DataServiceVersion, MaxDataServiceVersion"
);
config.EnableCors(cors);
使用Fiddler并发布HTTP CORS通信的跟踪,还可能在浏览器控制台中发布错误。还可以发布完整的WebApiConfig方法,在其中配置各种位和块。使用Fiddler并发布HTTP CORS流量的跟踪,还可以在浏览器控制台中发布错误。同时发布完整的WebApiConfig方法,在其中配置各种位和块。