dotnet跨域问题之预检请求的重定向

浏览器模式是不允许预检请求的重定向的(redirect for a preflight request)

场景:
前后端分离情况下,不同域名的应用,当前端去dotnet core的web api接口中取数据时,出现了错误,
跨域错误,错误的大概意思就是 redirect is not allowed for a preflight request 预检请求不允许重定向。

原因:
原来以为是在项目中引入的跨域中间件用法有问题,后来经过排查,发现原来,请求没有通过认证,就直接被重定向到了登录页面,即返回了302,没有进入接口。

解决:
可以集成登录,使用户能通过验证

总结:
类似这种Cors跨域的问题,引入中间件一般可以解决。而如果出现这种预检请求的重定向问题,你可以
1.把预检请求变为简单请求
2.在服务端增加过滤,当为预检请求时,返回200

因为预检请求只要返回的不是2XX开头的,都会当做错误处理,所以需要注意下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值