使用 4.0.31,我的 AppHost Configure 方法声明如下:
public override void Configure(Funq.Container container)
{
HostConfig hc = new HostConfig()
{ HandlerFactoryPath = "api", UseHttpsLinks = true };
SetConfig(hc);
Plugins.Add(new CorsFeature());
Plugins.Add(new SwaggerFeature());
...
}
我的印象是这会将 swagger-ui 的 url 设置为 ../api/resources 的 https 版本,但是我仍然在 swagger URL 文本框中获得常规的 http 端点,例如:
http://example.com/myapp/api/resources
我们的网络服务器位于执行 SSL 卸载(并且需要 SSL)的负载平衡器之后,因此 URL 应该是:
https://example.com/myapp/api/resources
从积极的方面来说,使用“UseHttpsLinks”实际上允许 swagger-ui 在您修复端点 url 后运行。没有它根本行不通!
我正在通过 Virtual File System 使用替换 index.html 覆盖 swagger url 属性作为黑客——因为在开发、QA 和暂存环境中,url 属性指向生产...(不太好)
我是一名优秀的程序员,十分优秀!