WebApi如果没有正确配置跨域访问,会提示
Preflight response is not successful
在asp.net core中,我们可以通过startup.cs配置跨域问题
配置startup.cs
services.AddCors(options=>{
options.AddPolicy("any",builder=>{
builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials();
});
});
配置controller
除了配置startup.cs允许跨域外,我们还需要在controller方法中增加[EnableCors("any")]属性
[HttpGet]
[Produces("application/json")]
[EnableCors("any")]
public JsonResult Get()
{
return Json(_service.Get());
}
ajax调用
配置完成后,我们就可以通过ajax调用
$(function(){
$.ajax({
url:"http://localhost:5000/Product",
type:"get",
contentType: 'application/json',
success:function(data){
var obj = data;
var str="";
for(var i=0;i<obj.length;i++){
str+="<li>"+obj[i].name+"</li>";
}
$("#div1").append(str);
}
});
});
看看哎
楼主辛苦了。