哪个 OpenAPI 客户端 sdk 用于 loopback4 和 angular?

der*_*eka 6 typescript loopbackjs openapi angular loopback4

我们目前正在将loopback3应用程序迁移到loopback4. 服务器的迁移是向前推进的,但是angular由于“sdk” ,迁移客户端似乎成为一个问题。

因为loopback3我们使用@mean-expert/loopback-sdk-builderangular6+. 该项目似乎已终止,并且与loopback4.

loopback3以这种方式为我们生成 sdk :

服务器的 package.json:

"scripts": {
    "gen-sdk": "node ./node_modules/@mean-expert/loopback-sdk-builder/bin/lb-sdk src/server.js ../frontend/src/app/shared/sdk --wipe=enabled"
}
Run Code Online (Sandbox Code Playgroud)

发电机启动服务器的副本,读取不同的内部元数据和生成的文件写入到客户端项目-据我可以看到它并没有利用的swagger.json提供loopback3

我们正在寻找可与loopback4. 后端提供了一个openapi.json来描述端点。

您在angular项目中使用哪个 sdk (最好用 编写TypeScript)?是否有生成的代码最兼容的 sdk @mean-expert/loopback-sdk-builder

到目前为止,我发现并测试了以下项目来生成一个 openapi 客户端:

  • openapi-生成器
    • con:是用Java编写的
    • con : 一直抛出 NullpointerExceptions(可能我们的 openapi.json 不正确,但是这个生成器没有提供有用的错误信息)
  • ng-openapi-gen
    • pro : 写在TypeScript
    • con:生成的操作名称真的很奇怪,也许只能与loopback4?
    • con:该项目似乎不是很活跃

angular您建议使用哪种设置与loopback4休息后端交谈?

小智 0

Loopback 4 项目通过其有关根据 OpenAPI 规范构建 Angular 应用程序的文档解决了这个问题

步骤摘要如下:

  1. npm run openapi-spec在您的 Loopback 4 项目中,使用生成 OpenAPI JSON 文件的命令从控制器生成 openapi-spec 。
  2. 在 Angular 应用程序中,使用 ng-openapi-gen 包从上一步中的 OpenAPI JSON 文件生成 Angular API 存根。例如:

ng-openapi-gen --input <path-to-openapi-json> --output <angular-app-path>/src/app/api

该目录的内容<angular-app-path>/src/app/api包含在 Angular 中使用的 API 的模型。请参阅他们的文档以获取完整的示例。