Angular SignalR не работает с URL-адресом прокси-сервера AWS Load Balancer

#angular #signalr #asp.net-core-signalr #aws-load-balancer

#angular #signalr #asp.net-core-signalr #amazon-elb

Вопрос:

Я использую signalR между своей Angular библиотекой @aspnet/signalr и .NET Core приложением. Он отлично работает как на локальном компьютере, так и на IIS.

Я хочу использовать пользовательский URL , поэтому я применил прокси, AWS Load Balancer чтобы URL-адрес API выглядел так https://api.example.com . Он также отлично работает с Load Balancer URL.

С URL-адресом прокси-сервера он выдает ошибку failed: Error during WebSocket handshake: Unexpected response code: 400 . Есть предложения по решению этой проблемы?

Комментарии:

1. Error during WebSocket handshake: Unexpected response code: 400 Вы явно установили разрешенный перенос в WebSockets только на стороне клиента Angular? И, пожалуйста, проверьте, включен ли протокол WebSockets.

2. @FeiHan Да, именно поэтому он работает нормально, если я указываю Load Balancer URL напрямую. Мы перенаправляем группе с Load Balancer пользовательского URL.

Ответ №1:

Здесь основная проблема была связана с балансировщиком сетевой нагрузки. Позже мы создали и протестировали это с помощью отдельного балансировщика нагрузки приложений, и он работал нормально.