asp.net core api跨域问题

话不多说

首先,在start.cs中

ConfigureServices 中


//配置跨域
            #region 
            string[] urls =Configuration.GetSection("AllowCors:AllowAllOrigin").Value.Split(',');
//允许这里的地址跨域访问(在APPsetting中设置)
            services.AddCors(options =>
            {
                options.AddPolicy("AllowAllOrigin", builder => 
                                  //自定义一个AllowAllOrigin特性,允许跨域
                {
                    builder.WithOrigins(urls)
                    .AllowAnyMethod()
                    .AllowAnyHeader()
                    .AllowAnyOrigin()//允许所有来源的主机访问
                    .AllowCredentials();//允许处理cookie
                });
            });
            #endregion

Configure中

//使用cors跨域
            app.UseCors("AllowAllOrigin");

最后,需要在controller的头部,添加这一行代码

//namespace ApiToMysql.Controllers
//{
    //[Route("api/[controller]")]
    //[Produces("application/json")]
    //[ApiController]
    [EnableCors("AllowAllOrigin")]//设置跨域处理		就这个位置!!注释掉的是为了给你找位置23333
    //public class UserController : Controller
   //{

在APPsetting中

"AllowCors" :{
    "AllowAllOrigin": 
      "*",
    "https://localhost:8080/",
  }//允许请求的地址,星号表示所有地址都可以,粘贴的时候,删掉哦

然后就可以在前端调用接口啦,,前端的知识我这里就不讲了

发布了12 篇原创文章 · 获赞 6 · 访问量 4508

猜你喜欢

转载自blog.csdn.net/weixin_43329956/article/details/88821177