#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:
Здесь основная проблема была связана с балансировщиком сетевой нагрузки. Позже мы создали и протестировали это с помощью отдельного балансировщика нагрузки приложений, и он работал нормально.