错误 SEC7120:[CORS] 源“http://localhost:4200”在 Access-Control-Allow-Origin 响应中未找到“http://localhost:4200”

实际上,我正在尝试将 Angular 应用程序与我的 Maven-Jersey-webapp(实现 Rest Services 概念)连接并收到此错误。

更多详细信息:我正在使用 Oracle10g XE Database Eclipse IDE for maven Project( http://localhost:8080/MavenProject ) Angular CLI( http://localhost:4200/ )

我想从数据库中检索数据(存储在学生表中),然后在 Angular App 中的表中显示该数据我的球衣项目以 JSON 和 XML 格式返回表数据(成功运行)

retrieving student table data in JSON format using Maven-jersey-webapp implementing rest

angular code making get request using HttpClient

error which i get while making get request

stack overflow Error SEC7120: [CORS] The origin 'http://localhost:4200' did not find 'http://localhost:4200' in the Access-Control-Allow-Origin response
原文答案

答案:

作者头像

您可以通过检查您是否正在使用来解决此问题

http vs https

只需使用 http 来修复它。之后,将其添加到您创建的角度服务的标题中,就像执行这样的代码

 const httpOptions = {
            headers: new HttpHeaders({
                'Access-Control-Allow-Origin': 'http://localhost:4200', // -->Add this line
                'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,OPTIONS',
                'Access-Control-Allow-Headers': '*',
                'Content-Type': 'application/json',
                'Accept': 'application/json'
            })
        };

只需检查您在代码中传递的字符串值。有时你的眼睛会误会这些值。像

http://localhost:4200 与 https://localhost:4200

作者头像

我有完全相同的错误。

问题出在 .net core web api 项目中。我发帖的方法在参数列表中定义了一个对象,没有空的构造函数。

CORS 错误确实具有误导性。

作者头像

打开文件 App_Start/WebApiConfig.cs。添加 config.EnableCors();在 WebApiConfig.Register 方法中。