Asp.net web api 如何在ASP.NET Web API自宿主应用程序中使用CORS?
我正在尝试将ASP.NET Web API自托管应用程序与CORS一起使用,但出现错误: 无法加载XMLHttpRequest。访问控制允许原点不允许原点为nullAsp.net web api 如何在ASP.NET Web API自宿主应用程序中使用CORS?,asp.net-web-api,cors,Asp.net Web Api,Cors,我正在尝试将ASP.NET Web API自托管应用程序与CORS一起使用,但出现错误: 无法加载XMLHttpRequest。访问控制允许原点不允许原点为null 如何处理它?WebAPIContrib项目有一个简单的Cors。或者,如果您正在寻找更复杂的解决方案,则该项目具有CORS支持。添加类 public class CustomHeaderHandler : DelegatingHandler { protected override Task<HttpResponseM
如何处理它?WebAPIContrib项目有一个简单的Cors。或者,如果您正在寻找更复杂的解决方案,则该项目具有CORS支持。添加类
public class CustomHeaderHandler : DelegatingHandler
{
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, System.Threading.CancellationToken cancellationToken)
{
return base.SendAsync(request, cancellationToken)
.ContinueWith((task) =>
{
HttpResponseMessage response = task.Result;
response.Headers.Add("Access-Control-Allow-Origin", "*");
return response;
});
}
}
您还可以通过从安装Microsoft.AspNet.WebApi.Cors软件包来实现这一点 这将允许您的API启用
跨源资源共享(CORS)
。你可以这样做:
var config = new HttpSelfHostConfiguration(_baseAddress);
config.EnableCors(new EnableCorsAttribute("*", headers: "*", methods: "*"));
@这对我来说不起作用的神经,我仍然得到,“XMLHttpRequest无法加载请求的资源上不存在‘访问控制允许源代码’头。因此不允许源代码“”访问。”@SeyedMortezaMousavi现在CORS支持也在Web API中烘焙。
var config = new HttpSelfHostConfiguration(_baseAddress);
config.EnableCors(new EnableCorsAttribute("*", headers: "*", methods: "*"));