1. 在开发机测试好的Swagger发布到https服务器后可能出现下面问题:
2、但是直接浏览docs地址是可以读取到数据。
3、解决办法是在SwaggerConfig.cs中取消代码注释,并实现GetRootUrlFromAppConfig方法。
1 //c.RootUrl(req => GetRootUrlFromAppConfig(req));
1 private staticstring GetRootUrlFromAppConfig(HttpRequestMessage message) 2 { 3 var virtualPathRoot = message.GetRequestContext().VirtualPathRoot; 4 5 var schemeAndHost = "https://" + message.RequestUri.Host; 6 return new Uri(new Uri(schemeAndHost, UriKind.Absolute), virtualPathRoot).AbsoluteUri; 7 }
4、编辑发布后docs文件地址会直接定向到https。