api netcore 跨域支持_在dotnet core web api中支持CORS(跨域访问)

本文介绍了如何在Dotnet Core Web API中实现CORS跨域支持。通过简单的代码示例,展示了如何允许API支持跨域访问,包括在控制器级别和全局级别启用CORS,以及在Azure Web App中配置跨域策略。
摘要由CSDN通过智能技术生成

最近在写的Office add-in开发系列中,其中有一个比较共性的问题就是在add-in的客户端脚本中访问远程服务时,要特别注意跨域访问的问题。

那么,如果我们自己写一个服务,怎么样让他支持CORS呢?我下面用一个例子演示这个过程

1. 使用dotnet new webapi 这个指令创建一个基于dotnet core的项目

2.不要做任何修改,直接运行dotnet run

此时我们这个api其实是不支持跨域访问的,我们可以通过下面的免费的工具进行测试

4.通过简单的两句代码即可让这个api支持跨域访问

请注意,这一行代码需要写在AddMvc之后。

然后在需要暴露出来的API Controller上面启用CORS

5. 再次测试,我们就可以发现现在这个API已经支持跨域访问了

6.如果是需要给所有的API,都实现这个功能,那么下面这样的方式可能更加简化

7. 如果不想这么复杂,其实在对应的方法里面,显式地修改Response的Headers属性也是可以的。

Response.Headers.Add("Access-Control-Allow-Origin","*");

8. 如果你选择将这个API部署到Azure,而且使用的是 Web App这个服务的话,甚至可以做到更好:代码中不需要定义CORS属性,而是在平台上面定义

在ASP.NET Web API中实现CORS(跨域资源共享)

默认情况下,是不允许网页从不同的域访问服务器资源的,访问遵循"同源"策略的原则. 会遇到如下的报错: XMLHttpRequest cannot load http://local ...

SpringBoot学习(3)-SpringBoot添加支持CORS跨域访问

SpringBoot学习(3)-SpringBoot添加支持CORS跨域访问 https://blog.csdn.net/yft_android/article/details/80307672

Spring Boot 2中对于CORS跨域访问的快速支持

原文:https://www.jianshu.com/p/840b4f83c3b5 目前的程序开发,大部分都采用前后台分离.这样一来,就都会碰到跨域资源共享CORS的问题.Spring Boot 2 ...

SpringBoot添加支持CORS跨域访问

原文:https://www.jianshu.com/p/c6ea21b64f6e CORS(Cross-Origin Resource Sharing)"跨域资源共享",是一个W ...

.net core web api 添加对session跨域实现

1.配置Startup /ConfigureServices添加: services.AddSession(options => { options.Cookie.Name = ".A ...

把旧系统迁移到.Net Core 2.0 日记 (16) --Cors跨域访问

IE浏览器的Intranet局域网设置默认是可以跨域访问的.chrome就不可以. 这里说的跨域是指javascript代码不能跨域, 当然你在后端controller代码里用HttpClient.G ...

Asp.Net WebApi+Microsoft.AspNet.WebApi.Core 启用CORS跨域访问

WebApi中启用CORS跨域访问 1.安装 Nugget包Microsoft.AspNet.WebApi.Cors This package contains the components to e ...

基于JWT的web api身份验证及跨域调用实践

随着多终端的出现,越来越多的站点通过web api restful的形式对外提供服务,很多网站也采用了前后端分离模式进行开发,因而在身份验证的方式上可能与传统的基于cookie的Session Id的 ...

在ASP.NET Core Web API中为RESTful服务增加对HAL的支持

HAL(Hypertext Application Language,超文本应用语言)是一种RESTful API的数据格式风格,为RESTful API的设计提供了接口规范,同时也降低了客户端与服务 ...

随机推荐

SQL Server附加数据库报错:无法打开物理文件,操作系统错误5

问题描述:      附加数据时,提示无法打开物理文件,操作系统错误5.如下图: 问题原因:可能是文件访问权限方面的问题. 解决方案:找到数据库的mdf和ldf文件,赋予权限即可.如下图: 找到mdf ...

web开发前端学习

bootstrap:  http://www.bootcss.com/ bootstrap:   http://bootsnipp.com/snippets/featured/single-colum ...

HDU 4746 莫比乌斯反演+离线查询+树状数组

题目大意: 一个数字组成一堆素因子的乘积,如果一个数字的素因子个数(同样的素因子也要多次计数)小于等于P,那么就称这个数是P的幸运数 多次询问1<=x<=n,1<=y<=m,P ...

删除Visual Studio Online 中团队项目

最新文章:Virson's Blog 方法1:使用TFSDeleteProject删除: 1).在本地Visual Studio中登录云端TFS服务器: 2). 连接成功之后,打开VS命令工具,下图红 ...

jedis入门一

一.下载Jedis的依赖包jedis-2.1.0.jar,然后将其添加到classpath下面. 1. 定义连接:Redis暂时不要设置登录密码 Jedis jedis = new Jedis(&qu ...

转&rsqb;python 结巴分词&lpar;jieba&rpar;学习

原文  http://www.gowhich.com/blog/147 主题 中文分词Python 源码下载的地址:https://github.com/fxsjy/jieba 演示地址:http:/ ...

NYOJ--927--dfs--The partial sum problem

/* Name: NYOJ--927--The partial sum problem Author: shen_渊 Date: 15/04/17 19:41 Description: DFS,和 N ...

查看oracle数据库里哪些语句耗时最长或者效率最低

CPU: select * from (select v.sql_id, v.child_number, v.sql_text, v.elapsed_time, v.cpu_time, v.disk_ ...

一个域名最多能对应几个IP地址?,一个IP地址可以绑定几个域名?

一个域名最多能对应几个IP地址?,一个IP地址可以绑定几个域名?谢谢 xikeboy | 浏览 31055 次 推荐于2016-04-24 14:21:14 最佳答案 1.也就是说通常情况下一个域名同 ...

上传input中file文件到云端,并返回链接

有的文件.图片等信息可以上传到云端上,然后使用链接调用,这样会更加的方便和快捷.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值