Angular 加载外部配置,并将此配置用于另一个http调用

Angular 加载外部配置,并将此配置用于另一个http调用,angular,Angular,对于我们的应用程序,我们需要从外部url读取配置。这个配置文件包含一个APIRL,我们应该使用它来处理所有其他http请求(Rest) 我尝试将APP_初始值设定项与工厂方法一起使用,该工厂方法调用我们的服务来加载配置。这将返回一个可观察的 当我们打开页面时,会执行一个get请求来获取所有客户。这是通过http请求完成的,该请求应使用配置中的APIRL 但是,系统不会等到第一次调用(获取配置)准备就绪,因此APIRL还不可用 一个选项是将每个调用包装为(伪): 这是不可取的,因为其他开发人员应该

对于我们的应用程序,我们需要从外部url读取配置。这个配置文件包含一个APIRL,我们应该使用它来处理所有其他http请求(Rest)

我尝试将APP_初始值设定项与工厂方法一起使用,该工厂方法调用我们的服务来加载配置。这将返回一个可观察的

当我们打开页面时,会执行一个get请求来获取所有客户。这是通过http请求完成的,该请求应使用配置中的APIRL

但是,系统不会等到第一次调用(获取配置)准备就绪,因此APIRL还不可用

一个选项是将每个调用包装为(伪):

这是不可取的,因为其他开发人员应该直接调用customerService,而不必担心配置

当我们可以在构造函数中注入配置对象并直接使用它时,这应该很好。这可能吗

如果没有,如何确保配置可用于所有其他API调用(启动时加载)?类似于同步的http.get请求


Angular版本4.3.4

当我将可观测值转换为承诺时,它似乎会正确地等待

return configObservable.toPromise();

似乎当我将可观察的转化为承诺时,它会正确地等待

return configObservable.toPromise();

请在APP_初始值设定项中给出一个承诺,它肯定会得到解决。它正在得到解决,但在第二次调用以获取客户后它就完成了。我的意思是,在应用程序的其余部分开始之前-如果这不起作用,请在GitHub上提出一个问题(请参见示例)。它看起来像是相同的问题。因此,通常所有APP_初始值设定项都应该在继续之前解决。请给出一个,APP_初始值设定项中的一个承诺肯定应该得到解决。它正在得到解决,但在第二次调用以获取客户后它就完成了。我的意思是在应用程序的其余部分开始之前-如果这不起作用,请在GitHub上提出问题(参见示例).看起来是同样的问题。因此,正常情况下,所有应用程序初始化程序都应在继续之前解决。