关于 asp.net core 2.0 webapi的跨域,我们这里使用CORS来实现,不使用旧的JSONP,可以这样配置:
打开 Startup.cs文件,转到ConfigureServices(IServiceCollection services) 中,增加:
代码语言:javascript复制services.AddCors(options =>
{
options.AddPolicy("AnyOrigin", builder =>
{
builder
.AllowAnyOrigin()
.AllowAnyMethod();
});
});
再转到Configure(IApplicationBuilder app, IHostingEnvironment env)中,增加:
代码语言:javascript复制app.UseCors("AnyOrigin");
就可以开启CORS跨域了。
关于ASP.Net Core的CORS跨域问题详细的使用方法,请参考《Enable Cross-Origin Requests (CORS) in ASP.NET Core》一文。
下面测试一下:
代码语言:javascript复制<html>
<head>
</head>
<body>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
<script>
$(function(){
$.ajax({
url:"http://domain/api/Mall/Category/List",
data:{id:1},
dataType:"json",
type:"post",
success:function(result){
console.log(result);
}
});
});
</script>
</body>
</html>
直接双击通过浏览器打开这个页面,可以看到,已经读到远程接口的数据了:
以上。
本文作者:老徐
本文链接:https://cloud.tencent.com/developer/article/1405653
转载时须注明出处及本声明