如何从 WCF-REST API 服务创建 Swagger 规范

Posted

技术标签:

【中文标题】如何从 WCF-REST API 服务创建 Swagger 规范【英文标题】:How to create Swagger specification from WCF-REST API services 【发布时间】:2021-07-21 02:55:45 【问题描述】:

我需要从 WCF-REST API 服务创建 Swagger 规范。我为此目的找到了一个包 Swagger4WCF,但不幸的是,这不是可行的程序,它重复键并且有很多其他各种错误。有没有人知道针对同一目标的可行程序,没有错误?

【问题讨论】:

一开始就使用 WCF-REST 不太可行。在 ASP.NET MVC/Web API 出现之前,这只是权宜之计。 @PanagiotisKanavos。首先,WCF-REST 比任何其他创建 REST API 的方法都更方便、更舒适。其次,这不是理论上的调查,我有数百万条代码的可行应用程序,我需要对其进行修改。当然,微软认为在软件开发过程中什么是对什么是错的根本不重要,因为微软的目标只是提高软件价格而已。 说 WCF-REST 不可行也不是理论上的观察。这也不是微软的意见。这是一个开发者社区verdict。 WCF-REST 是 10 多年前引入的权宜之计,一旦出现专门为 REST 构建的更好选择,开发人员自己就会放弃。仅仅因为人们对构建它们不感兴趣,您将很难找到任何好的 Swagger/OpenAPI 包。 长话短说,如果你想使用没有社区支持的遗留技术,你必须自己支持它,或者付费获得专业支持。无论哪种情况,即使及时(并且损失了收入),您也需要为此付费 在任何情况下,您都在要求图书馆推荐,这是明确超出范围的。如果您搜索 NuGet,您会找到 just 5 packages。除了一个之外,所有这些都来自 2018 年或更早。所有人似乎都有一个 GitHub 存储库,这意味着您可以根据需要分叉和修复代码。最近的一个包似乎是 SwaggerWCF 的一个分支(不是你使用的那个)来让它工作 【参考方案1】:

现在有一个用于 Wcf 的 Swagger 实现。您应该检查一下 - WCF 的 Swagger - SwaggerWcf。

您也可以使用 WCF 中提供的help document。

【讨论】:

Swagger 相当于 WSDL,而不是生成的帮助页面。该特定软件包于 2018 年被放弃,可能有效,也可能无效。不过,它比 Swagger4WCF 更受欢迎很多(168K 下载与 5K 下载)。 a very recent fork 修复了一些错误并将包引用更新为例如 JSON.NET 到最新版本

以上是关于如何从 WCF-REST API 服务创建 Swagger 规范的主要内容,如果未能解决你的问题,请参考以下文章

了解带有附件 (SwA) 的 WCF Multipart Soap 服务/端点

如何防止 Apache PDFBox 中的通用签名伪造 (USF)、增量保存攻击 (ISA)、签名包装 (SWA)

如何使用 REST API 从服务帐户凭据创建访问令牌?

h3c vlan配置

自制方法装饰器擦除所有元数据,我该如何解决?

如何使用来自 extjs 的 SSL 调用 rest