基于Swagger GUI的C#项目中swagger.json本地文件定位问题
为什么你找不到本地的swagger.json文件?
你找不到这个文件是正常的——因为它根本不是物理存储在你本地磁盘上的,而是动态生成的。
在ASP.NET Core项目中,Swagger的swagger.json文件是由Swashbuckle.AspNetCore这个库在运行时实时生成的:
- 当你的应用启动后,Swashbuckle会自动扫描项目里的控制器、接口方法、数据模型等代码,构建出符合OpenAPI规范的文档数据。
- 当你在浏览器访问
/swagger/v1/swagger.json这个路径时,服务器会实时把构建好的文档数据转换成JSON格式返回给浏览器,所以你能正常获取内容,但本地不会有真实的swagger.json文件和对应的swagger目录。 - 你代码里的
c.SwaggerEndpoint("/swagger/v1/swagger.json", "Employee API V1")只是给SwaggerUI指定了获取API文档的请求路径,并不是指向某个本地物理文件。
如果需要把这份文档保存到本地,直接在浏览器打开http://localhost:5128/swagger/v1/swagger.json,右键选择“另存为”就能把动态生成的内容存成本地文件。
内容的提问来源于stack exchange,提问作者Dominique
相关产品推荐
相关产品推荐

