解决dotnet-Angular的跨域(cors)问题

前言

之前学了点 Angular ,打算用 dotnet core 做后端,之前没接触过这方面的东西,理所当然的遇到了跨域问题,之后也解决了,所以在此做个记录

碰到的问题

在使用 dotnet cli 生成的 angular 模板中

大概有一段代码是这样写的 (如果 3.1 后面的版本没改动的话)

angulardotnet 同时启动,也必须同时结束

这个时候两个项目运行在同一个"域"下,大概是 localhost:5000 这种的

这样并不方便调试,dotnet 部分需要改动的时候,angular 也需要停掉

所以 dotnet 相关文档 给出了一个解决方案

虽然方便了开发,但是之后大概就会出现一些跨域访问失败的问题了(反正不知怎么的,我就碰到这问题了)

如何解决

主要修改 startup 中的代码

ConfigureServices 中添加以下代码

services.AddCors(options =>
{
options.AddPolicy("随便起个名字",
builder => builder.AllowAnyOrigin()
.AllowAnyHeader().AllowAnyMethod());
});

然后在 Configure 中添加

app.UseCors("上面随便起的那个名字");

之后大概就可以了

如果有不同的需求,可以添加不同的跨域策略

services.AddCors(options =>
{
options.AddPolicy("随便起个名字",
builder => builder.AllowAnyOrigin()
.AllowAnyHeader().AllowAnyMethod()) options.AddPolicy("随便起个名字#2",
builder => builder.AllowAnyMethod());
});

然后在使用的时候自己选择就好了

补充

当使用 AllowAnyOrigin 的时候,允许所有域,如果希望能够指定域,可以使用 WithOrigins

services.AddCors(options =>
{
options.AddPolicy("angular",
builder => builder.WithOrigins("http://localhost:4200","http://localhost:8080")
.AllowAnyHeader().AllowAnyMethod());
});

由于angular默认用4200端口

写成这样大概就好了

解决dotnet-Angular的跨域(cors)问题的更多相关文章

  1. python 全栈开发,Day100(restful 接口,DRF组件,DRF跨域(cors组件))

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确.方便快速开发 - 针对pc,手机,ipad,微信,支付宝... 使用同一个接口 2. 简述http协议? - 基 ...

  2. zuul+security跨域Cors问题解决

    zuul+security跨域Cors问题解决 简介 场景 在服务后台都会出现跨域cors问题,不过一般spring解决起来比较方便,在框架+框架的基础上,问题就显得特别明显了,各种冲突,不了解源码的 ...

  3. 跨域CORS

    一.跨域CORS是什么 当一个资源从与该资源本身所在的服务器的域或端口不同的域或不同的端口请求一个资源时,浏览器会发起一个跨域 HTTP 请求.出于安全考虑,浏览器会限制从脚本内发起的跨域HTTP请求 ...

  4. netCore2.0 Api 跨域(Cors)

    1.在使用netCore2.0 使用WebApi的过程中涉及到了跨域处理. 在Microsoft.AspNetCore.All包中包含跨域Cors的处理,不必单独添加. 2.打开Startup.cs文 ...

  5. Angular2,Springboot,Zuul,Shiro跨域CORS请求踩坑实录

    前言:前后端分离,业务分离,网关路由等已经成为当下web application开发的流行趋势.前端以单页面路由为核心的框架为主体,可以单独部署在nodejs或nginx上.后端以springboot ...

  6. Angular http跨域

    原文:Angular http跨域 - 飞翔的小仓鼠 - 博客园 var app = angular.module('Mywind',['ui.router']); app.controller('M ...

  7. Vue-cli proxyTable 解决开发环境的跨域问题

    Vue-cli proxyTable 解决开发环境的跨域问题 proxyTable: { '/list': { target: 'http://api.xxxxxxxx.com', pathRewri ...

  8. 解决阿里云OSS跨域问题

    解决阿里云OSS跨域问题 现象 本人项目中对阿里云图片请求进行了两次,第一次通过img标签进行,第二次通过异步加载获取.第一次请求到图片,浏览器会进行缓存,随后再进行异步请求,保存跨域失效. 错误信息 ...

  9. IIS Manager 配置文件修该,允许跨域CORS访问

    IIS Manager 配置文件修该,允许跨域CORS访问 IIS Manager 的api访问会出现跨域问题,需要 IIS Manager的配置文件中修改. 配置文件的路径:C:\Program F ...

随机推荐

  1. Spring Boot 开发 WebService 服务

    WebService 虽然现在大部分互联网企业不太提倡使用,但在以第三方接口为主导的市场,对方来什么接口你还得用什么接口,不可能把接口重写了.例如大部分传统的大型企业都在用 WebService,并且 ...

  2. Cisco AP-格式化AP

    故障情况:APC11-AP04#sho capwap ip config LWAPP Static IP ConfigurationIP Address         172.17.239.204I ...

  3. quartz定时任务cron表达式讲解及翻译成现实语言的插件的使用详解

    cron表达式讲解 参见该网址: https://www.cnblogs.com/GarfieldTom/p/3746290.html cron表达式只有专业技术人员才看得懂,普通人不知道表达式是什么 ...

  4. JAVA面向对象解决实际问题实例(一)

    某次战役中,为便于信息交互,我军侦察部门将此次战役的关键高地坐标设定为(x=0,y=0)并规定,每向东增加100米,x加1,每向北增加100米,y加1.同时,我军情报部门也破译了敌军向坦克发送的指挥信 ...

  5. idea maven项目使用过程中遇到的问题

    1. Error:Cannot build Artifact :war exploded because it is included into a circular depency 参考: http ...

  6. idea使用小技巧

    1.按住alt,鼠标往下拉一条直线,可以选中一列或多列,或者不选中任何文字,可以让光标定位到这几行的相同的列的位置,然后输入文本,发现在被选中的所有行同时输入了这些文本(类似notepad++): 2 ...

  7. 第二章linux网络基础设置总结!

    一:查看及测试网络 (1)查看活动的网络接头命令:ifconfig (2)查看所有网络接口命令:ifconfig -a (3)查看指定的网络接口(不论该网络接口是否处于激活状态)命令:ifconfig ...

  8. php学习 打星星

    <?php // 输入几行 $k=9; // 打孔三角 for($i=1;$i<=$k;$i++){ if($i==$k){ for($n=1;$n<=$k*2-1;$n++){ e ...

  9. paramiko linux pip18.1

    Collecting paramiko Downloading https://files.pythonhosted.org/packages/cf/ae/94e70d49044ccc234bfdba ...

  10. centos 安装phpize

    yum -y install php-devel 然后 /usr/bin/phpize