ВЕБ-API C#: Попытка подключения не удалась, поскольку подключенная сторона не ответила должным образом через некоторое время

#c# #amazon-web-services #sockets #asp.net-web-api

#c# #amazon-веб-сервисы #розетки #asp.net-веб-api

Вопрос:

Я создаю одну службу, которая подключается к другой внешней конечной точке веб-api для извлечения данных с помощью метода HttpClient PostAsync. Я создаю службу в .net framework 4.6.1, на локальном хосте все работает нормально, но когда я перемещаю код в тестовую среду, я получаю следующую ошибку.

Исключение System.Net.WebException: Не удается подключиться к удаленному серверу System.Net.Sockets.Исключение SocketException: Попытка подключения не удалась, поскольку подключенная сторона не ответила должным образом через некоторое время, или не удалось установить соединение, поскольку подключенный хост не ответил XX.XX.XXX.XX:443. в System.Net.Сокеты.Разъем.InternalEndConnect(IAsyncResult AsyncResult) в System.Net.Sockets.Разъем.EndConnect(IAsyncResult AsyncResult) в точке System.Net.ServicePoint.ConnectSocketInternal(Логическое значение connectFailure, Сокет s4, Сокет s6, Сокет и сокет, IP-адрес и адрес, состояние состояния ConnectSocketState, IAsyncResult AsyncResult, исключение и исключение) — Конец трассировки внутреннего стека исключений — в System.Net.HttpWebRequest.EndGetRequestStream(IAsyncResult AsyncResult, TransportContext и контекст) в System.Net.Http.HttpClientHandler.GetRequestStreamCallback(IAsyncResult ar)

Мой код размещен в AWS, а веб-api, который я использую, также размещен в другом AWS.

В чем будет причина этой ошибки?

Брандмауэр блокирует эту связь?

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

1. Да, похоже на то !

2. На AWS, надеюсь, ваша машина, которая пытается подключиться, находится в списке авторизованных IP-адресов.

3. @AbhayDesai Я проверил белый список IP, IP занесен в белый список на AWS. Но API размещен за шлюзом, поэтому мне нужно внести в белый список как шлюз, так и фактический IP-адрес машины.

4. Получил ответ на проблему: я должен отправить запрос команде API, чтобы они могли разрешить мой адрес шлюза NAT в конце.