博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Web Api 利用 cors 实现跨域
阅读量:5259 次
发布时间:2019-06-14

本文共 1164 字,大约阅读时间需要 3 分钟。

一.安装 cors

二.修改 Web.config

(如果想允许所有请求, 则都设置为 "*")

三.修改 WebApiConfig.cs , 增加如下代码

public static void Register(HttpConfiguration config)        {            // Web API 配置和服务            //跨域配置            var allowedMethods = ConfigurationManager.AppSettings["cors:allowedMethods"];            var allowedOrigin = ConfigurationManager.AppSettings["cors:allowedOrigin"];            var allowedHeaders = ConfigurationManager.AppSettings["cors:allowedHeaders"];            config.EnableCors(new EnableCorsAttribute(allowedOrigin, allowedHeaders, allowedMethods)            {                SupportsCredentials = true            });......

 

测试结果:

   

 

当然,也可以设置只让某一些api允许跨域:

 

[HttpGet]        [HttpPost]        [Route("order/pager")]        [EnableCors(origins:"http://localhost:27593",headers:"*",methods:"*")]        public IHttpActionResult Pager([FromUri]Person p)        {            return Json(p);        }

并且,这种设置也遵循就近原则:

如果像上面那样设置后,27593 则能够通过访问该接口获取到数据,而 42021 则不行 .

如果不想有什么限制,允许所有访问跨域,则可以只在 WebApiConfig.cs 中添加如下代码即可:

config.EnableCors(new EnableCorsAttribute("*", "*", "*"));

 

转载于:https://www.cnblogs.com/refuge/p/8371845.html

你可能感兴趣的文章
Linux下给mysql创建用户分配权限
查看>>
千万级用户的大型网站,应该如何设计其高并发架构?
查看>>
easyui-datebox 只能获取当前日期以前的日期
查看>>
Linux简单学习
查看>>
LDAP学习小结【仅原理和基础篇】
查看>>
MySQL练习题1
查看>>
Linux OpenGL 实践篇-16 文本绘制
查看>>
项目:Android平台txt阅读软件
查看>>
解决Spring MVC报No converter found for return value of type:class java.util.ArrayList问题
查看>>
关系代数和sql语句对应关系
查看>>
jQuery-ui treegird 使用
查看>>
插件笔记——dataTables使用说明
查看>>
Linux 下node环境安装
查看>>
Python 字典(Dictionary) 小菜鸟学Python
查看>>
隐式类型转换规则
查看>>
Linux Shell命令-----VI
查看>>
APS系统如何让企业实现“多赢”?看高博通信是怎么做的
查看>>
ERROR StatusLogger No log4j2 configuration file found. Using default configuration
查看>>
POJ 1321 DFS
查看>>
Linux下查看文件和文件夹大小 删除日志
查看>>