7

正如我所看到的,在webpack.dev.config中有代理。我如何在webpack.prod.config中设置代理?我想调用除自我域名url之外的另一个api域名url。在Webpack生产配置中设置代理Angular 2+

+1

。您需要在您的http服务器中配置代理。例如,如果你的http服务器是nginx,你可以做一些像location/api/{proxy_pass http:// localhost:8080; } –

+0

@JuliaPassynkova,我正在使用'jhipster'来源:https://jhipster.github.io/using-angular你能告诉我任何有效的例子吗? –

+0

JHipster是一款应用程序生成器,因此它不会回答您提供生产文件的服务器的问题。您使用JHipster生成了什么样的配置?知道你将在生产环境中为你的代码提供服务的服务器对于帮助你建立一个代理服务器是非常重要的,除非你想在它之前放置一个代理服务器。 – Hampus

回答

3

我会尽量提供一些答案。

正如朱莉娅指出的那样。您不应该在生产环境中使用webpack dev服务器,因为它不适用于此目的,所以问题不应该是如何使用它配置生产代理配置。话虽这么说,如果你真的想你可以开始使用自定义代理服务器配置一个的WebPack服务器,像这样:

ng serve --proxy-conf proxy.conf.json 

什么,你应该做的是给的WebPack使用,通过angular/cli建立一个生产建立与再移动这些文件以供您选择的静态文件服务器提供服务。建立一个产品包,像这样:

ng build --prod 

上述所有从你的链接https://jhipster.github.io/using-angular/

由于您使用JHipster拍摄已经有指导,并就如何把你的代码到生产模具。在这里继续你的阅读:https://jhipster.github.io/production/

我希望这点你在正确的方向在生产中,您将无法通过代理使用的WebPack-dev的服务器

+0

'proxy'是一个很好的选择,还是我应该考虑环境变量? –

+0

代理(反向代理)和环境变量不是解决同一问题的工具,那么您希望完成什么工作?您是否希望您的客户端/服务人员能够与您自己的其他Web服务进行通话?或者您需要将代理服务器放在服务器前面,以便您可以指导传入的请求? – Hampus

+0

是的,我的前端服务器和后端(webservices)服务器是不同的。 –