在 ng build prod 之后,我无法使用我的 rest api

哈姆扎·布勒格

我在运行开发服务器时使用 proxy.config.json

 "/api": {
        "target": "http://localhost:8080",
        "secure": false,
        "loglevel": "debug",
        "changeOrigin": true
    },
    "/login": {
    "target": "http://localhost:8080",
    "secure": false,
    "loglevel": "debug",
    "changeOrigin": true
}

但是在构建之后我无法使用我的 rest api 我尝试使用 environment.ts 但我收到了这个错误

Access to XMLHttpRequest at 'http://localhost:8080/login' from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

任何解决方案(不在服务器端)?

雷萨

首先,Angular 代理仅用于ng serveng build因为它不起作用

你有两个解决方案

解决方案1

如果您的后端 api 托管在网络托管下的同一台服务器上,您可以执行以下操作

return this.http.post<Client>('/api/client/profile', { id: id})

在这种情况下,如果您的网址是,{urwebsiteurl}/web那么您的 api 应该被托管{urwebsiteurl}/web/api

然后,由于您本地运行在 4200 上并且您无法在本地进行该配置,因此您将起诉代理,例如

{
    "/api/": {
        "target": "https://localhost:8443/", // the address of your local api
        "secure": false,
        "changeOrigin": false,
        "logLevel": "debug"
    }
}

解决方案2

将 apiUrl 添加到您的 environment.ts 和 environment.prod.ts 并在您的服务中使用该值而不是使用代理

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ng build --prod抛出异常

无法确定用于类的模块-ng build --prod

ng build --prod无法正常工作?如何检查呢?

无法加载角度生成的网页(ng build --prod)

使用不同的环境设置运行ng build --prod

使用`ng build --prod'构建时的角度内部错误

我们运行 ng build --prod 时默认设置的选项是什么

为什么当我想要ng build --prod时出现此问题?

'ng build'与'ng build --prod'不一致

来自 UglifyJs 的 ng build --prod 错误

ng build --prod在Terser上失败

ng build --prod的java脚本加载问题

ng build --prod 不构建代码

无法使用ng build --prod构建angular 2项目

错误:使用ng build --prod构建时无法解析Service的所有参数

angular 2 ,在 ng build --prod 之后,ui-router 停止工作

Angular 5-使用带有uglify和minify的ng build进行Dev / QA构建(例如ng build --prod)

ng build --prod无法确定X类的模块!将ThreadListTabsComponent添加到NgModule进行修复

Angular-无法解析组件ng build --prod的所有参数

在ng build --prod期间无法解析验证指令中的所有参数

使用 ng build --prod 后,Angular2 看不到图像

使用ng build --prod进行生产构建后Angular5应用程序失败

ng build --prod时使用ngx-hm-carousel模块时出错

使用 ng build --prod 的类型上不存在属性“NameNews”

当我尝试使用 ng build --prod 构建应用程序时,它说“属性 'invited_by' 在类型 'any[]' 上不存在”

ng build --prod未生成vendor.bundle.js

运行ng build --prod时会发生什么?

ng build --prod后如何运行index.html文件

Angular 4 NG Build --Prod 对话框错误