我想要将我的angular应用程序部署到多个amazon实例(超过10个)。对于每个实例,后端api也会发生变化。
我不想在环境文件中硬编码api url,也不想像下面这样改变环境。
ng serve --environment=prod
我想用ng serve指定后端url,如下所示
ng serve --backendApiUrl=http://www.example.com/api.
这有可能吗?
发布于 2017-02-20 19:51:24
不可能开箱即用。
第一种选择是把你的后端api url放在负载均衡器后面,这样如果有变化,配置需要一加更新;另外,你还能获得负载平衡的额外好处。像AWS Elastic Load Balancing或Netflix这样的东西可能会有所帮助。
假设您不能做到这一点,那么ng serve
命令就没有能力做到这一点( ng serve
source)。因此,您最好的选择是编写一个bash脚本,该脚本将其作为参数,并将其存储起来以供ng2使用。显然,在这一点上你的angular代码已经捆绑在一起了,所以没有一种方法可以像你在构建时使用webpack等工具那样注入/编织到你的代码中。但是你可以通过一个单独的文件来实现这一点,angular拉入到定义后端API的文件中。然后,您的bash脚本只需覆盖此文件即可更新URL。
https://stackoverflow.com/questions/42342511
复制相似问题