您如何将swagger.json文件添加到SwaggerUI?到目前为止,我只能生成一个,并且它会自动在Web应用程序中“引用”自身,并且我可以从/swagger/v1/swagger.json进行调用,我唯一能找到的帮助是关于URL植根,但是swagger如何找到您的项目中的规格?
我还能够将多个.json文件添加到SwaggerUI,文档中说是这样做的]
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "SwaggerDemo v1");
c.SwaggerEndpoint("/swagger/v2/swagger.json", "SwaggerDemo v2");
});
但这只是扎根在哪里发现了这个json文件?
没有办法做这样的事情吗?
app.UseSwaggerUi3(c => c.AddSpec("./Swagger/swagger1.json"));
我有什么想念的吗?
请帮助。
结果证明您不能,如果要引用本地.json规范,则必须将其root。
在控制器中:
[Route("api/[controller]")]
[ApiController]
public class DefaultController : ControllerBase
{
[HttpGet]
public string GetSwaggerSpec()
{
var path = Path.GetFullPath(<SWAGGER.JSON>);
StreamReader stream = System.IO.File.OpenText(path);
return stream.ReadToEnd();
}
在Startup.cs中:
app.UseSwaggerUi3(c => c.SwaggerRoutes.Add(new SwaggerUi3Route("All", "/api/default")));