.net6 Api添加跨域
参照:(7条消息) .net6使用最小api(8)— 开启跨域模式,通过扩展服务实现_hailang2ll的博客-CSDN博客
步骤:
一、在appsetting.json里添加配置文件
//配置文件如上:
"Cors": {
"EnableAllIPs": false, //是否应用所有的IP
"PolicyName": "CorsIpAccess", //策略名称
"IPs": "http://127.0.0.1:2364,http://localhost:2364"//需要访问的域名
},
二、创建对应的配置类
public class CorsOptions
{
public bool EnableAllIPs { get; set; }//是否应用所有的IP
public string PolicyName { get; set; }//策略名称
public string IPs { get; set; }
}
三、在program.cs里做相应配置
var builder = WebApplication.CreateBuilder(args);
//先将对应的配置绑定到对象里
CorsOptions corsOptions = new CorsOptions();
builder.Configuration.Bind("CorsOptions", corsOptions);
//配置跨域
builder.Services.AddCors(c =>
{
if (!corsOptions.EnableAllIPs)
{
c.AddPolicy(corsOptions.PolicyName,
policy =>
{
policy
.WithOrigins(corsOptions.IPs.Split(','))
.AllowAnyHeader()//Ensures that the policy allows any header.
.AllowAnyMethod();
});
}
else
{
//允许任意跨域请求
c.AddPolicy(corsOptions.PolicyName,
policy =>
{
policy
.SetIsOriginAllowed((host) => true)
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials();
});
}
});
四、将配置的跨域策略添加到请求处理管道
var app = builder.Build();
// CORS跨域,这里的PolicyName对应就是配置文件里的策略名称
app.UseCors(corsOptions.PolicyName);
.net6 Api添加跨域的更多相关文章
- Web API 解决跨域问题
一.跨域问题的由来 同源策略:出于安全考虑,浏览器会限制脚本中发起的跨站请求,浏览器要求JavaScript或Cookie只能访问同域下的内容. 正是由于这个原因,我们不同项目之间的调用就会被浏览器阻 ...
- 在Angular.js中的H5页面调用Web api时跨域问题处理
/// <summary> /// 被请求时 /// 在Angular.js中的H5页面调用Web api时跨域问题处理 /// </summary> /// <para ...
- web api 解决跨域的问题
web api 总是会遇到跨域的问题,今天我找到了如下方法解决跨域: 1: a:在配置文件中的 加上如下代码 <system.webServer> <httpProtocol> ...
- 使Web Api 支持跨域资源共享(CORS)
Reference:http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api Imp ...
- ASP.NET Web API决跨域问题
记录最近一次的项目开发中遇到的问题和解决方式.在给移动端开放数据接口的时候,移动端开放人员反映部署到测试环境的接口调用访问出现了问题,但是在单独进行访问是可以正常的.那么,问题就来了. 根据查询园子里 ...
- ajax调用.net API项目跨域问题解决
ajax调用.net API项目,经常提示跨域问题.添加如下节点代码解决:httpProtocol <system.webServer> <handlers> <remo ...
- 「Django」rest_framework学习系列-API访问跨域问题
#以中间件方式解决API数据访问跨域问题1.API下新建文件夹下写PY文件a.引入内置类继承: from django.middleware.common import MiddlewareMixin ...
- Laravel API 允许跨域访问
服务器A请求服务器B的接口,那么一般会出现跨域问题.全解跨域请求处理办法 XMLHttpRequest cannot load http://api.console.vms3.com/api/user ...
- 跨域解决方案之JSONP,通过借助调用百度搜索的API了解跨域案例
跨域解决方案之JSONP 同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web ...
- ASP.net Web API允许跨域访问解决办法
来源 http://blog.csdn.net/wxg_kingwolfmsncn/article/details/48545099 遇到此跨域访问问题,解决办法如下: 方法一: 1. 在we ...
随机推荐
- linux创建快捷方式
第一方法设置软连接 ln -s test.log test2.log 第二方法 第一步 新建 /usr/share/applications 目录下的某个快捷方式文件 如 touch /usr ...
- AI之Ollama
介绍 什么是llama LLaMA(Large Language Model Meta AI)是Meta开发的大规模预训练语言模型,基于Transformer架构,具有强大的自然语言处理能力.它在文本 ...
- Deepseek学习随笔(8)--- 清华大学发布Deepseek从入门到精通(附网盘链接)
文档简介:AI时代的新工具手册 清华大学新闻与传播学院联合元宇宙文化实验室发布的<DeepSeek从入门到精通>,是一份系统化.实战性极强的AI工具学习指南.文档聚焦国产开源通用人工智能工 ...
- Linux服务器快速卸载安装node环境(简单上手)
这篇文章主要介绍了Linux服务器快速卸载安装node环境(简单上手) 1.先卸载npm sudo npm uninstall npm -g 2.卸载node yum remove nodejs np ...
- ADF - [02] 概念
题记部分 001 || 管道和活动 一个数据工厂可以有一个或多个管道(Pipeline).管道是共同执行一项任务的活动的逻辑分组.管道可以包含一组活动(Activity),这些活动引入和清除日志数据, ...
- 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
大家好!今天给大家带来一个好消息,Dapr(Distributed Application Runtime)1.15版本正式发布啦!对于不熟悉Dapr的朋友来说,Dapr是一个开源的.跨平台的运行时, ...
- .NET 10首个预览版发布:重大改进与新特性概览!
前言 .NET 团队于2025年2月25日发布博文,宣布推出 .NET 10 首个预览版更新,重点改进.NET Runtime.SDK.Libraries .C#.ASP.NET Core.Blazo ...
- surpac 中如何删除点
找到显示的编号 输入线窜线段编号
- Django实战项目-学习任务系统-定时任务管理
接着上期代码框架,开发第4个功能,定时任务管理,再增加一个学习定时任务表,主要用来设置周期重复性的学习任务,定时周期,定时时间,任务标题和内容,预计完成天数,奖励积分和任务状态等信息. 现实中学习一门 ...
- 动态规划--最长公共子序列( LCS 问题)
博客地址:https://www.cnblogs.com/zylyehuo/ # -*- coding: utf-8 -*- # 最长公共子序列的长度 def lcs_length(x, y): m ...