首页 > 解决方案 > 为什么即使在我们调用其余调用的同一服务器上运行 Angular 应用程序也会出现 cors 问题

问题描述

我在本地机器上开发了 Angular 应用程序。在我的应用程序中,我正在调用 rest 来获取数据。所以在我的本地机器上,我遇到了 CORS 问题。但是当我在具有相同端口的同一台服务器上部署这个角度应用程序时,即rest api 和我的应用程序都在具有相同端口的同一台服务器上。REST API:- http://domain:port/api 应用 URL:- http://domain:port/home

然后我在调用rest api时也遇到了CORS问题。请解释我如何解决这个问题。

谢谢, 苏雷什

标签: angularjscors

解决方案


在您的本地计算机上,您可以创建一个代理来重定向对 api 的调用,使其与您的 Angular 应用程序位于同一端口上。创建一个名为 proxy.conf.json 的文件并将以下内容放入其中,将 apiport 更改为您的 api 端口号。

{
  "/api/*": {
    "target": "http://localhost:apiport/api/",
    "pathRewrite": {
      "^/api": ""
    },
    "changeOrigin": true,
    "secure": false,
    "logLevel": "debug"
  }
}

然后启动应用程序

ng serve --proxy-config proxy.config.json

或将以下内容添加到 package.json 文件的脚本部分

"localstart": "ng serve --proxy-config proxy.config.json",

并从

npm run localstart

推荐阅读