AspNetCore SignalR концентратор PathString при размещении в IIS - PullRequest
0 голосов
/ 15 октября 2019

Так мы обычно настраиваем маршруты хабов в файле Startup.cs

app.UseSignalR(routes =>
            {
                routes.MapHub<UserEventsHub>("/usereventshub");
            });

Все это нормально, если мы запускаем приложение в консоли или как корень сайта под IIS. Если мы размещаем IIS в поддомене, клиентские приложения не могут найти концентратор.

Я проверил документацию, и она нигде не говорит об этом. Я предполагаю, что могу изменить PathString следующим образом:

app.UseSignalR(routes =>
            {
                routes.MapHub<UserEventsHub>("<URL-WITH-SUB-DOMAIN>/usereventshub");
            });

И, очевидно, я могу изменить значение строки, используя параметр в appsettings. Но я хотел выяснить, что является лучшей практикой для этого? Есть ли способ, которым сигнализатор может обнаружить, что он размещен как поддомен, и считать его корневым. По какой-то причине я предположил, что PathString относится к корню веб-приложения. Очевидно, это не

Сводка AspNetCore 3.0

Когда приложение размещено на serverName.com, найден URL-адрес концентратора.

При размещении на serverName. com / subdomain, концентратор не найден

...