.net mvc angular应用程序中的CORS问题[关闭]

Posted

技术标签:

【中文标题】.net mvc angular应用程序中的CORS问题[关闭]【英文标题】:CORS Issue in .net mvc angular application [closed] 【发布时间】:2019-12-09 05:06:15 【问题描述】:

我在 .net 中有一个带有 MVC 的 API 项目和另一个在 Angular 7 中的项目。当我尝试调用一个方法时,发生了 CORS 问题。错误消息如下所示。任何人都可以帮助解决这个问题吗?提前致谢

访问 XMLHttpRequest 在 'http://localhost:55134/UserDetails/GetUserDetails' 来自原点 “http://localhost:4200”已被 CORS 策略阻止:响应 预检请求未通过访问控制检查:否 'Access-Control-Allow-Origin' 标头出现在请求的 资源。

我已经安装了包Microsoft.AspNet.WebApi.Cors并添加了

EnableCorsAttribute cors = new EnableCorsAttribute("*","*","*");
config.EnableCors(cors);

WebApiConfig.cs 文件中。

【问题讨论】:

Deadly CORS when http://localhost is the origin的可能重复 也检查一下:***.com/questions/56015934/… 如果没有minimal reproducible example,我认为这是无法回答的。 【参考方案1】:

修改服务器,添加头Access-Control-Allow-Origin: * to 从任何地方启用跨域请求(或指定域 而不是 *)。

*仅开发人员:

禁用同源如果这只是为了开发或学习 目的,最简单的做法是禁用同源策略 在您的浏览器中。请注意,如果您这样做,您将打开您的 浏览器安全隐患。请按照以下说明操作:Chrome Firefox 这更像是最后的手段。修改服务器以支持 CORS 或运行代理是最好的方法。*

更多:- 参考链接:- https://daveceddia.com/access-control-allow-origin-cors-errors-in-angular/

Deadly CORS when http://localhost is the origin

https://coderwall.com/p/_ff9dg/enabling-cross-origin-resource-sharing-cors-on-google-chrome-for-javascript-api-calls-and-debugging-purposes

或者, 使用铬:- Disable same origin policy in Chrome

或者,

在 chrome 中添加 chrome 扩展:-“允许 CORS: 访问控制允许来源”

【讨论】:

【参考方案2】:

有一些解决方法:

    关闭浏览器安全性; 使用代理(但这些是临时方法); 在服务器端设置"Access-Control-Allow-Origin":'*',并在角度请求标头。

希望这会有所帮助。

【讨论】:

Access-Control-Allow-Origin 不是请求标头,不会执行任何操作。

以上是关于.net mvc angular应用程序中的CORS问题[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

angular.js的路由和模板在asp.net mvc 中的使用

Angular 路由模板 url 是不是支持 ASP.Net MVC 5 项目中的 *.cshtml 文件?

如何使用 Angular 2 在 POST 上启用 ASP.NET MVC 4 中的跨源请求

使用 .net mvc 在 IIS angular 2 应用程序上发布

将 Angular 和 .net core web api 安全地集成到现有的 MVC 5 应用程序中

ASP.NET Core 中的 Jwt 令牌身份验证