描述

浏览器安全策略上的安全限制可以有效阻止Ajax向另外的一个域server发起请求,这就是著名的同源策略,如何突破这种限制,可以使用CORS。

public static void AddCommon(this IServiceCollection services){services.AddCors(options =>{options.AddPolicy("AllowAll", p =>{p.AllowAnyOrigin()//允许任务来源的主机访问.AllowAnyMethod()//允许任何请求方式.AllowAnyHeader();//允许任何头部//.AllowCredentials();//允许任何证书     Core3.0之后不允许Origin和Credentials都不做限制});});}

AddCors来添加一个跨域处理方式,AddPolicy就是加个巡逻官,看看符合规则的放进来,不符合的直接赶出去。

方法 介绍
AllowAnyOrigin 允许所有的域名请求
AllowAnyMethod 允许所有的请求方式GET/POST/PUT/DELETE
AllowAnyHeader 允许所有的头部参数
AllowCredentials 允许携带Cookie

这里我使用的是允许所有,可以根据自身业务需要来调整,比如只允许部分域名访问,部分请求方式,部分Header:

services.AddCors(options =>{options.AddPolicy("AllowSome", p =>{p.WithOrigins("https://www.baidu.com").WithMethods("GET", "POST").WithHeaders(HeaderNames.ContentType, "x-custom-header");});});

允许跨域

在Configure中声明全局跨域

public void Configure(IApplicationBuilder app, IHostingEnvironment env){app.UseCors("AllowAll"); app.UseHttpsRedirection();app.UseMvc();      }

只对面某一些控制器进行跨域

[EnableCors("AllowSome")]

只对某一些方法进行跨域

[EnableCors("AllowSome")]

对某个Action限制跨域

[DisableCors]

.NetCore跨域相关推荐

  1. ASP.NET Core微服务(三)——【跨域配置】

    ASP.NET Core微服务(三)--[跨域配置] 对应练习demo(跨域)下载路径(1积分):[https://download.csdn.net/download/feng8403000/151 ...

  2. c#分页_使用Kotlin搭配Springboot开发RESTFul接口(二)自定义配置、跨域、分页

    前言 上一篇文章请看这里:使用Kotlin搭配Springboot开发RESTFul接口与服务部署 上一篇文章介绍了Kotlin搭配Springboot的开发流程,从搭建项目.ORM.Controll ...

  3. 同源策略_如何支持跨域

    欢迎大家阅读<朝夕Net社区技术专刊> 我们致力于.NetCore的推广和落地,为更好的帮助大家学习,方便分享干货,特创此刊!很高兴你能成为忠实读者,文末福利不要错过哦! 01 PART ...

  4. 跨域-(jsonp cors)

    同源策略它是由NetScape提出的一个著名的安全策略. 浏览器执行js,会检查它属于哪个页面,如果不是同源页面,不会被执行. 由于浏览器的同源策略,只要发送请求url与页面地址有不同的即为跨域.只要 ...

  5. KSO-.NETCore中实现跨域的代码以及几种跨域方式

    跨域 指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器施加的安全限制. 所谓同源是指,域名,协议,端口均相同,只要有一个不同,就是跨域,同源策略(Sameoriginpoli ...

  6. NetCore3.1解决跨域

    跨域问题的出现,简而言之就是基于浏览器同源策略而反馈出来的一种安全机制,是前端开发调用中出现的一种十分常见的问题,且解决方法有多种,比如采用Nginx做代理服务器,或者在前端使用自己的代理服务器,或者 ...

  7. 继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错? springboot 两种方式稳定解决跨域问题

    继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错???springboot 两种方式稳定解决跨域问题! 之前我写了一篇文章,来解决CORS报错 ...

  8. kotlin设置CORS跨域资源共享,java设置允许跨域,服务端如何设置 springboot中设置跨域资源共享

    CORS通信过程,都是浏览器或http插件自动完成,不需要 用户/开发人员 参与.对于开发者来说,CORS通信与同源的AJAX通信没有差别,代码是完全一样的.浏览器一旦发现AJAX请求跨源,就会自动添 ...

  9. 关于上传文件的跨域问题

    在进行新框架开发的过程中,需要自定义页面组件实现脱离表单的文件(图片)上传,考虑过wex5自带的attachmentsimple的自定义写法很难受,就改用了第三方插件webuploader来实现选择文 ...

最新文章

  1. go语言的map以及红黑树的map
  2. 【ASP.NET Web API教程】2.3 与实体框架一起使用Web API
  3. micropython webrepl_4-5 MicroPython WebREPL 命令行交互环境设置-2 接入点模式
  4. Windows环境下JDK安装与环境变量配置详细的图文教程
  5. 使用C#操作Oracle Spatial的SDO_GEOMETRY对像(读取和写入)
  6. pycharm安装怎么选_安装新风系统,地送风和顶送风哪种?专业师傅分析,不纠结怎么选...
  7. 【双路E5装机】2016.7.31整机升级计划
  8. python调用swmm程序_Python SWMM5包_程序模块 - PyPI - Python中文网
  9. 编出个区块链:数据结构的序列化,看看数字货币如何传输数据
  10. PDF、PMF、CDF是什么
  11. linux分析mirna,一篇15分的miRNA芯片文章详细解读 | 文章解读
  12. Linux内核访问用户空间文件 filp_open/vfs_read/vfs_write/set_fs/get_fs
  13. C++ 多种取整函数的使用和区别: ceil() floor() round() trunc() rint() nearbyint()
  14. ITU标准介绍及下载索引
  15. 给米钱包、买买分收取用户15%-20%“砍头息”,泸州银行为资金方
  16. python自动化通知webhook接口代码参考
  17. ubuntu16.04成功安装 百度网盘 by deepin-wine-for-ubuntu
  18. iOS 16.2 的7个惊人变化
  19. 游戏出现GetThreadContext failed报错 Unity开发
  20. 图记2007年北京国际马拉松比赛

热门文章

  1. MySQL 实用语句集合
  2. 简单的面试题简解思路(搜集)
  3. Java的LockSupport.park()实现分析
  4. Objective-C NSSetNSMutableSet以及CountedSet
  5. Andorid Binder进程间通信---总结
  6. mysql 中执行的 sql 注意字段之间的反向引号和单引号
  7. 学习使用RIA Framework Flex创建MySQL管理UI(初学Flex实例教程)
  8. 如何在Ubuntu上创建桌面快捷方式
  9. 如何在Windows 10上设置默认Linux发行版
  10. 超链接禁用_如何在Microsoft Word中禁用超链接