asp.net core 2.0 api ajax跨域问题
2024-10-16 23:35:43
API配置:
services.AddCors(options =>
{
options.AddPolicy("any", builder =>
{
builder.WithOrigins("http://localhost") //指定允许来源的主机访问
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials();//指定处理cookie
});
}); //设置全局筛选器,全局控制器启用core
services.Configure<MvcOptions>(options =>
options.Filters.Add(new CorsAuthorizationFilterFactory("any")));
客户端:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta charset="utf-8" />
<script src="jquery.min.js"></script>
</head>
<body>
<input id="login" value="登录" type="button" />
<input id="sava" value="保存" type="button" />
<span id="message"></span>
<script> $("#sava").click(function () {
$.ajax({
type: 'GET',
url: "http://localhost:54821/api/v1/garbage/type",
data: { },
dataType: "json",
//必须有这项的配置,不然cookie无法发送至服务端
xhrFields: {
withCredentials: true
},
success: function (result) {
alert(result.code);
$("#message").html(result);
},
error: function (xhr,status) {
alert("失败");
$("#message").html(status);
}
});
})
</script>
</body>
</html>
此时设置全局启用,控制器中可以使用
最新文章
- SpingMVC ModelAndView, Model,Control以及参数传递
- SQL--使用NewID函数,创建GUID列
- tableView设置首尾
- VS2008+Qt+助手 智能提示不显示、Qt关键字不高亮的解决办法【已解决】
- 数据库ACID
- Mysql_mysql多个TimeStamp设置
- 5-Highcharts曲线图之轴反转
- SQL Server数据库备份(本机)
- 【BZOJ 2333 】[SCOI2011]棘手的操作(离线+线段树)
- Java__jar包的简单操作
- Android SDK r23
- NSPredicate的用法
- vuejs单一事件管理组件间的通信
- MVC 树节点Table格式授权
- MySQL两大存储引擎InnoDB与MyISAM
- 启用WCF压缩提升Dynamics 365 CE的网络性能
- Aurelia 创建模板
- Jenkins新建项目中源码管理Repository URL使用Git报错:Failed to connect to repository : Command ";git ls-remote -h......
- AngularJS入门之数据绑定
- 3种web会话管理方式