.NET Core设置允许跨域
2024-09-30
9
.NET Core 允许开发人员在 Web API 中设置跨域资源共享 (CORS)。CORS 是一种标准,允许浏览器从不同的域访问资源。
在 .NET Core 中设置 CORS 有两种方法:
使用 CorsPolicy 类 使用 Cors 属性使用 CorsPolicy 类
CorsPolicy 类允许开发人员自定义 CORS 策略。要使用 CorsPolicy 类,请创建一个 CorsPolicy 实例并设置所需的属性。
以下代码演示了如何使用 CorsPolicy 类设置 CORS 策略:
using Microsoft.AspNetCore.Cors;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// Add a CORS policy
services.AddCors(options =>
{
options.AddPolicy("MyPolicy",
builder =>
{
builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader();
});
});
}
}
在上述代码中,我们创建了一个名为 MyPolicy 的 CORS 策略。该策略允许来自任何域的任何请求方法和任何请求头。
使用 Cors 属性
Cors 属性允许开发人员在控制器或接口上快速设置 CORS 策略。要使用 Cors 属性,请将其添加到控制器或接口上。
以下代码演示了如何使用 Cors 属性设置 CORS 策略:
[Route("api/[controller]")]
[ApiController]
[Cors("MyPolicy")]
public class MyController : ControllerBase
{
}
在上述代码中,我们使用 Cors 属性设置了 MyPolicy 策略。
跨域请求的响应头
当请求被允许时,CORS 会添加以下响应头:
Access-Control-Allow-Origin:允许访问的域 Access-Control-Allow-Methods:允许的请求方法 Access-Control-Allow-Headers:允许的请求头 Access-Control-Allow-Credentials:是否允许在请求中使用凭据跨域请求的预检请求
浏览器在发送跨域请求之前,会先发送一个预检请求。预检请求用于检查服务器是否允许跨域请求。
当预检请求被允许时,CORS 会添加以下响应头:
Access-Control-Allow-Origin:允许访问的域 Access-Control-Allow-Methods:允许的请求方法 Access-Control-Allow-Headers:允许的请求头.NET Core 中的 CORS 功能允许开发人员在 Web API 中设置跨域资源共享。CORS 可以帮助开发人员在不同域之间安全地共享资源。
更新于:3天前赞一波!
相关文章
- Quartz.NET-面向.NET的开源作业调度系统
- .NET如何控制并发
- .NET IoC工具有哪些?
- .NET高性能大并发解决方案
- 自学.NET C#的中文网站推荐
- .NET 常见的20个面试题
- .NET常见设计模式面试题
- .NET Core不重新编译立即更新页面
- .NET Framework被.NET Core淘汰了吗?
- .NET Core获取Request.UrlReferer
- .NET async await最佳实践
- 图像视觉库AForge.NET人脸检测用法
- 2023年主流.NET ORM库有哪些?
- .NET Core开发常用命令
- .NET Core怎么判断请求类型
- .NET如何解决高并发锁表
- .NET JWT库Microsoft.IdentityModel.Tokens示例
- EF Core在非MVC项目中需要手动释放吗?
- .NET6创建windows服务图文教程
- .NET支持PostgreSQL的ORM有哪些?
文章评论
评论问答