2014-10-09 1 views
0

Используя 4.0.31, мой метод AppHost Настройка объявляется следующим образом:Servicestack Кураж UI конечной точки не ведет себя, как ожидается, с UseHttpsLinks

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()); 

    ... 
} 

Я был под впечатлением, что это было бы установить URL для развязность-интерфейса к быть версия протокола HTTPS в ../api/resources, однако я все еще получаю регулярные HTTP конечную точку в развязность URL текстового поля, как:

http://example.com/myapp/api/resources 

Наши веб-серверы находятся за багажных балансиры, которые выполняют SSL разгрузку (и требуется SSL), поэтому URL-адрес должен быть:

https://example.com/myapp/api/resources 

На положительном примечании использование «UseHttpsLinks» на самом деле позволяет функции swagger-ui исправлять URL-адрес конечной точки. Это не сработало без этого!

Я переопределяю свойство URL-адреса swagger с помощью замены index.html через Virtual File System в качестве взлома - так как в среде разработки, контроля качества и промежуточной среды свойство url указывает на производство ... (не так хорошо)

ответ

1

Config.UseHttpsLinks был расширен, также применяются к BaseUrl где он сейчас меняет http:// URLs в https://in this commit.

Это изменение можно получить у v4.0.33 +, которое сейчас available on MyGet.

+0

Фантастический, спасибо. (На днях я могу задать вопрос, о котором вы уже не подумали) –