我是Swagger的新手,据我所见,它是用来自动生成API文档的。此外,我认为它也用于生成前端使用Swagger。在这一步中,我对在我的项目中正确地使用swagger感到困惑。
我已经使用.NET核心创建了我的后端,并且已经准备好了。现在,我需要将swagger集成到我的项目中。我有一个初始的角前端应用程序,但是由于代码是混合的,我想从stratch创建前端,然后将Swagger集成到其中。是这样的;
1.应该使用必要的Swagger工具生成前端吗?它似乎不是很好,但如果它是普遍使用,不会成为一个问题,因为项目变得更大,当然,我可以使用这个选项。
2.,如果我从stratch创建了一个角度项目,我如何才能集成这个swagger?我应该使用相关组件的ts文件生成代码吗?
3. --如果我向前端添加一个新组件,并向已经使用Swagger的API中添加相应的API方法。我该做什么修改?我试了一试,在构建项目之后,它生成了一个新的swagger配置文件。
发布于 2020-09-25 08:50:28
我在下面的问题上发表了一些评论。
为了澄清swagger和openApi是什么,swagger既是rest规范(例如swaggerSpec.Json),也是处理规范的一组工具。例如,swagger,swagger等等。现在,在某个时候,规范从swagger重命名为OpenApi。
这意味着规范称为openApi,swagger是一组处理OpenApi的工具。
来源:https://swagger.io/blog/api-strategy/difference-between-swagger-and-openapi/
除了swagger之外,还有一组可供选择的工具,如NSwag和Swashbuckle,它们可以使使用openApi规范更容易。
主要有两个部分:
为规范生成
我研究了所有三个选项(Swagger、SwashBuckle和NSwag),我选择了NSwag,因为在当时( a)它是我工作的那个,( b)它具有最多的特性,( c)社区相当活跃。这是一年前的事了。
我将解释我的工作流程,这将回答你的大部分问题。我觉得这个问题越来越广泛,所以请你四处挖掘一下,试着找出更多适合你需要的具体问题。
就像我说的,我使用NSwag工具链:
。

然后使用

输出:

此时,您可以选择再次使用

然后将swagger文档添加到我的服务器项目中,并启用swagger:
在Startup.cs的某个地方:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IOptions<AppSettings> appSettingsAccessor, ILogger<Startup> logger, StaticFileConfigSection staticFileConfig)
{
// Add the openApi document and serve the swagger dashboard.
app.UseOpenApi();
app.UseSwaggerUi3(); // serve Swagger UI
...然后我可以去/swagger查看web:

就是这样。当然,所有这些工具都可以自动化--但我选择了不这样做。要让它发挥作用是一件很麻烦的事情,而对于NSwag工作室,我总是按一下按钮就可以了。这迫使我对我的工作更加小心。
发布于 2020-09-25 07:49:58
使用Codegen的
https://stackoverflow.com/questions/64059809
复制相似问题