.net core 的跨域
.net core 的跨域问题花了 我很长时间 接下来我简单的描述下解决过程
首先我在前端用jquery的ajax去调用自己的本地接口大致如下
$.ajax({
type:"POST",
url:"http://localhost:11969/api/Users/login",
dataType:"Json",
data:{
"username":"Majiko2018",
"password": "majiko123",
},
success:function(data){
console.log("成功");
console.log(data)
},
error:function(err){
console.log("失败");
console.log(err);
}
});
期间在不同的浏览器中显示都不一样
首先在chorme 中显示不出具体错误只是显示POST https://localhost:11969/api/Users/login 0 ()也不说具体啥错
于是我就在Edge中去调试,这个还正常点知道报错 No 'Access-Control-Allow-Origin

同样我也在explorer中debug了显示错误如下

一开始我认为会不会是在VScode中 React项目 里写ajax会有什么问题
因为已经尝试了网上很多关于.net Core跨域的问题都没能解决而且一直报同一个错期间当然也包括一些部署上的问题500,404 等等 简直绝望到死
后边我就尝试着注释之前的所有尝试再试一遍
在ConfigureServices中添加跨域操作
services.AddCors(options =>
options.AddPolicy("any",
builder => builder.AllowAnyMethod().AllowAnyHeader().AllowAnyOrigin().AllowCredentials()));
然后在controller层头部添加
[EnableCors("any")]
问题竟然解决了。。。
我现在都有点晕 这个.NET CORE的路由什么的我才刚刚接触都没有入门 我想是我对它了解的不深入导致的
首先是Startup层
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseCors("AllowAll2");//这个是必须的,且中间加什么都可以??
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
//这个也是必须的
app.UseCors(builder => builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader());
app.UseMvc();
}
public void ConfigureServices(IServiceCollection services)
{
//这个也是必须的
services.AddCors(options =>
options.AddPolicy("any",
builder => builder.AllowAnyMethod().AllowAnyHeader().AllowAnyOrigin().AllowCredentials()));
services.AddMvc();
}
然后到Controller层
在namespace之下添加 [Route("api/Users")](再添加了前面两个后,这个是非必须的)
这几天我会仔细看一下这方面的东西系统的总结一遍~
.net core 的跨域的更多相关文章
- .net core实现跨域
什么是跨域在前面已经讲解过了,这里便不再讲解,直接上代码. 一.后台API接口 用.net core创建一个Web API项目负责给前端界面提供数据. 二.前端界面 建立两个MVC项目,模拟不同的ip ...
- Asp.Net SignalR 使用记录 技术回炉重造-总纲 动态类型dynamic转换为特定类型T的方案 通过对象方法获取委托_C#反射获取委托_ .net core入门-跨域访问配置
Asp.Net SignalR 使用记录 工作上遇到一个推送消息的功能的实现.本着面向百度编程的思想.网上百度了一大堆.主要的实现方式是原生的WebSocket,和SignalR,再次写一个关于A ...
- 重新整理 .net core 实践篇————跨域问题四十一]
前言 简单整理一下.net core 的跨域问题,这个以前也整理过比较详细的,故而在此简单整理一下. 正文 对跨域相对的就是同源,什么是同源呢? 协议相同(http/https) 主机(域名)相同 端 ...
- .Net Core Api 跨域配置
.Net Core 和Asp.Net 不同,不需要再去引用其他的跨域组件.创建项目时,就有了. 让接口实现跨域,需要配置两个地方. 一.Startup.cs 这里需要配置两个地方 public voi ...
- .net core关于跨域及Cookie的部分问题
一.如何跨域 1.情景描述 目前有A站点和B站点.A站点有一个API接口为UserData接口,B站点希望可以通过ajax请求来获取A站点该接口数据. 2.后端修改 首先在ConfigureServi ...
- .net core api 跨域
什么是跨域? 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制. 所谓同源是指,域名,协议,端口均相同,不明白没关系,举个栗子: h ...
- .net core入门-跨域访问配置
Asp.net Core 跨域配置 一般情况WebApi都是跨域请求,没有设置跨域一般会报以下错误 No 'Access-Control-Allow-Origin' header is prese ...
- Asp.net Core CORS 跨域
本文主要介绍在Asp.net Core采用CORS方式解决跨域 关于跨域的原理介绍可参考Asp.net Web API 解决跨域详解 1 在Startup添加允许跨域的策略 services.AddC ...
- ASP.NET Core 启用跨域请求
本文翻译整理自:https://docs.microsoft.com/en-us/aspnet/core/security/cors?view=aspnetcore-3.1 一 .Cross-Orig ...
随机推荐
- Mongo可视化工具基本操作
一.可视化工具界面(字段名可以不加引号) 二.查询(query)1.日期如:"F1":ISODate("2017-07-26T16:00:00Z")2.条件(& ...
- AR/VR-AR:AR
ylbtech-AR/VR-AR:AR 增强现实技术(Augmented Reality,简称 AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像.视频.3D模型的技术,这种技术的目标是在屏 ...
- 基于Qt Gui的Led控制显示程序
基于arm + linux的嵌入式软件开发,基本上的内容主要是:u-boot的移植,kernel的裁剪和相关驱动程序的设计,root-fs的制作,应用程序的设计,其中,应用程序主要包含两方面的内容:G ...
- Scala Beginner
开始学习Scala,下面的内容大部分从Scala官网翻译过来,有几个地方翻译的不是很好,表述不清楚的地方大家可以浏览Scala官网,多指教. Scala offical website is http ...
- hbase multiple SLF4J&n…
hbase multiple SLF4J bindings 警告 hbase shell 和命令操作中经常有个烦人的警告,说SLF4J有多个绑定: hbase(main):003:0> list ...
- 使用Spring的jdbcTemplate进一步简…
先看applicationContext.xml配置文件: 版权声明:本文为博主原创文章,未经博主允许不得转载.
- POJ - 2533 Longest Ordered Subsequence与HDU - 1257 最少拦截系统 DP+贪心(最长上升子序列及最少序列个数)(LIS)
Longest Ordered Subsequence A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let ...
- react中循环节点的方式以及图片引用的方式
import React from 'react' import img from '../public/img/001.jpg' // 此时img是一个变量,在下面直接使用该变量即可引入该图片 cl ...
- unite2017相关
日程 http://unite2017.csdn.net/ http://www.sohu.com/a/137202360_280780 http://www.gameres.com/750046.h ...
- AndroidStudio常用快捷键
Alt+Insert:查找override函数 Alt+Enter:自动引包