小编DuX*_*ati的帖子

如何在节点脚本中重用Angular 6 API服务?

我想在节点脚本中重用一些Angular 6 API服务,并且面临一些问题,正确地初始化所有内容.

使用Swagger Codegen(-l typescript-angular)生成API服务,例如:

@Injectable()
export class UserService {

    constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) { 
      ... 
    }

}
Run Code Online (Sandbox Code Playgroud)

这些服务在我的Angular 6应用程序中运行得很好,我现在想在节点中使用它们进行一些脚本编写.我知道Swagger Codegen也能够生成纯粹的Typescript客户端,但仍然希望重用现有的Angular服务来保持代码库更加一致.

我当时面临的挑战是如何在没有依赖注入的情况下调用此构造函数.

HttpClient没有依赖注入的情况下获得有效对象似乎非常困难.在AngularJS中,我曾经依赖于Axios,但是这个库并没有提供与HttpClient它看起来相同的接口(仍然是承诺而不是Angular 6中的新的可观察对象).

在我看来,有两种选择:

  1. 不知何故得到一个HttpClient对象 - >无法让它工作.
  2. 注入另一个暴露相同接口的HTTP客户端对象 - >似乎找不到一个.

有谁知道如何妥善解决这个问题?

干杯,

M.

node.js typescript angular

11
推荐指数
1
解决办法
320
查看次数

多个应用程序版本的数据转换

升级GAE应用程序时,升级数据模型的最佳方法是什么?

应用程序的版本号允许分隔多个版本,但这些应用程序版本使用相同的数据存储(根据如何在部署到Google App Engine后更改应用程序?).那么当我上传一个具有不同数据模型的应用程序版本时会发生什么(我在想这里的python,但问题也应该对Java有效)?我想如果更改添加一个可空字段和一些新类,这应该不是问题,因此可以扩展现有模型而不会造成伤害.但是,如果数据模型的变化更加深刻呢?如果现有数据与新数据模型不一致,我是否真的丢失了?

我目前看到的唯一选择是将数据存储置于维护只读模式,将数据转换为脱机并再次部署整个数据.

google-app-engine

6
推荐指数
1
解决办法
149
查看次数

当您有两个具有重叠 DNS 区域的 Google Cloud 项目时会发生什么?

关于 Google Cloud DNS 的一个问题:当您创建两个 Google Cloud 项目(例如 ProjectA 和 ProjectB)时会发生什么,每个项目都有一个公共托管 DNS 区域和相同的顶级域(例如 example.com)?

更准确地说:两者的子域(例如,ProjectA 中的 a.example.com 和 ProjectB 中的 b.example.com)都可以由客户端解析吗?

更奇怪的是:如果两个项目都定义相同的子域(例如,overlapping.example.com 的 A 记录)会发生什么?

我已经阅读了关于重叠区域的Google文档,但这似乎并没有回答这些问题。

有什么经验吗?

google-cloud-platform google-cloud-dns

4
推荐指数
1
解决办法
1497
查看次数