我正在使用 NSwag 生成我的 TypeScript 客户端(Angular 格式),但由于循环依赖,我在实现 Bearer 令牌身份验证时遇到了问题。
我的用户服务需要导入 TS 客户端以使用令牌 DTO,我的 TS 客户端需要导入用户服务以注入令牌。
因此,我想知道是否可以将生成的文件拆分为两个(或更多)客户端和模型文件。
另一种选择是在 HTTP 请求上实现一个拦截器,但我觉得这很可恶,因为如果我使用另一个 API 可能会导致问题。
我们遇到了这个问题,但我们计划反过来做。
这样我们就不必仅仅因为客户端需要其他东西而改变服务器。
我已经成功地将架构分解为多个架构,每个控制器一个,并通过 nswag 生成新文件。不是最漂亮的代码,但它可以工作。如果有人感兴趣,可以在 github 上发布
您可以创建单独的 NSwag 配置并运行每个配置。这是目前实现您正在寻找的东西的唯一方法。
这在使用正常约定的构建期间不起作用,并且需要在 proj 文件中进行修改,因为它可能是一个 powershell 脚本来运行 Pre 或 Post 过程。