要求
C端:用户端(http://www.b.com)
A端:管理端(http://admin.b.com)
问题:A端上传图片到C端指定文件夹内保存,供C端使用。
方案
① C端从nuget引入 Microsoft.AspNetCore.Mvc.Cors
Install-Package Microsoft.AspNetCore.Mvc.Cors
② Startup文件中的 ConfigureServices方法添加
var sites = Configuration.Get().AdminSite.Split(",");
//跨域,让管理端上传图片文件
services.AddCors(option => option.AddPolicy("adminCors",
policy => policy.WithOrigins(sites).AllowAnyHeader().AllowAnyMethod().AllowCredentials()));
sites是string [],允许的站点,这里的sites=["http://admin.b.com"];
③ Configure方法内添加
app.UseCors("adminCors");
④ 添加FileController.cs,并完成业务逻辑
⑤ A端Ajax调用
$.ajax({
url: 'http://www.b.com/File/Upload',
type: 'POST',
data: data,
processData: false,
contentType: false,
crossDomain: true, //带上cookie
xhrFields: {
withCredentials: true
},
success: function (res) {
//一些逻辑
},
error: function (err) {
//一些逻辑
}
});
最终完成:
C端的文件目录
Original: https://www.cnblogs.com/EminemJK/p/10607646.html
Author: 山治先生
Title: ASP.Net Core MVC+Ajax 跨域
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/565070/
转载文章受原作者版权保护。转载请注明原作者出处!