自定义 ng 服务来代理对 /api 的调用?

2024-03-29

我使用 ng CLI 创建了一个新应用程序,效果非常好: ng new babysteps cd babysteps ng serve ngserve 使用 webpack 来组装应用程序。为了充分测试它,我需要服务/api...来自我的 API 模拟服务器(特别是 POST 请求)。如何自定义所使用的 Web 服务器以重定向该 URL 模式?

Webpack 开发服务器有代理设置 https://webpack.github.io/docs/webpack-dev-server.html,但似乎(?)ng serve没有配置文件(或者我没有得到)。

我需要创建一个webpack.config.js或创建/编辑其他文件来代理?


您确实可以使用 Angular cli 设置后端代理,使用--proxy-config flag.

这或多或少是从文档 https://github.com/angular/angular-cli/blob/d22e9ae73763923980fc1e59cfb2a0bf255b98d8/docs/documentation/stories/proxy.md:

假设我们有一个服务器正在运行http://localhost:3000/api http://localhost:3000/api我们想要 所有呼叫http://localhost:4200/api http://localhost:4200/api去那个服务器。

我们在项目旁边创建一个文件package.json called proxy.conf.json与内容

{
    "/api":
    {
        "target": "http://localhost:3000",
        "secure": false
    } 
}

[...]

然后我们编辑package.json文件的启动脚本为

"start": "ng serve --proxy-config proxy.conf.json"

并运行它npm start

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自定义 ng 服务来代理对 /api 的调用? 的相关文章

随机推荐