码迷,mamicode.com
首页 > Web开发 > 详细

asp.net core 设置nginx proxy代理服务器转发后,无法访问swagger的问题 (Swashbuckle )

时间:2020-04-29 12:47:09      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:swagger   ash   point   导致   tutorials   api   git   lob   tutorial   

通过代理转发后,webapi的swagger无法访问,本质原因是代理后url路径发生变化导致/swagger无法定位到json。

#https://docs.microsoft.com/en-us/aspnet/core/tutorials/getting-started-with-swashbuckle

c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");

相关issue:

https://github.com/microsoft/service-fabric-issues/issues/327
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/662
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/427
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/380

issue评论中,一般推荐通过PreSerializeFilters设置BasePath的方案,但在5.x版本中BasePath被删除了。最终选择使用设置相对路径的方案:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/380#issuecomment-374711180

代码请见 https://github.com/wswind/swagger-under-nginx/blob/f5f6f89cb7f109059f5b4c9524a7ccbb401bc59a/Startup.cs#L56

app.UseSwaggerUI(c =>
	{
		c.SwaggerEndpoint("v1/swagger.json", "My API V1");
	});

asp.net core 设置nginx proxy代理服务器转发后,无法访问swagger的问题 (Swashbuckle )

标签:swagger   ash   point   导致   tutorials   api   git   lob   tutorial   

原文地址:https://www.cnblogs.com/wswind/p/swagger-proxy-problem.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!