我最近提出使用swashbuckle将swagger集成到我们的web-apis中,目的是向我们的工程师公开API内部功能。为我们的目的swagger在生产中没有意义,因为apis是后端.....作为一个企业环境,API的数量很大,我可以预见两个主要问题:模块化:从swashbuckle解开swagger-ui
程序集的大小是2.6MB:假设数百个apis搭配swahbuckle突然整合,所有应用的尺寸增加了4.5倍。无理打击。看着swashbuckle.core,我怀疑大部分的尺寸是来自swagger-ui被捆绑的。是否有可能从swashbuckle中解压swagger-ui,而是允许通过单独的nuget包添加swagger-ui。
在swashbuckle中捆绑的swagger-ui让每个api拥有自己的swagger-ui实例。对swagger-ui所做的任何定制都不会对其他项目产生影响,除非对每个api项目都进行了更改,从而增加了工作量并减少了可维护性机会。我们集中托管swagger-ui并进行定制,以允许开发人员在本地尝试他们的swagger实现(localhost),所以受swashbuckle集成swagge-ui的影响很大,并且可以选择通过swagger-ui一个单独的nuget包可选。
是否有任何事情正在解决上述问题,或者是我们最好的机会,只需要维护它就可以分叉并前进?