Что может помешать установлению соединения между двумя приложениями веб-API в Azure? - PullRequest
0 голосов
/ 29 августа 2018

У меня есть два приложения веб-API (ресурсы службы приложений) в Azure: app1 и app2 . Я пытаюсь отправить https запросов от app1 на app2 , но соединения не удается с этой ошибкой:

"Произошла ошибка при отправке запроса. Невозможно прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным хостом "

Когда я запускаю app1 на своем локальном компьютере разработчика (например, с VS 2017), я могу без проблем подключиться к app2 в Azure.

Я использую следующий код для POST запроса от app1 до app2 :

using (HttpClient client = new HttpClient())
{
    HttpResponseMessage response = await client.PostAsync(uri, stringContent);
}

Ответы [ 2 ]

0 голосов
/ 31 мая 2019

У меня была такая же ситуация (служба приложений A вызывает службу приложений B) и, наконец, обнаружила проблему.

В настройках SSL службы приложений B мне пришлось понизить Minimum TLS Version до 1,0.

Конечно, было бы лучше, чтобы служба приложений A использовала более высокую версию TLS, но я не знаю, как это установить.

0 голосов
/ 29 августа 2018
  1. Является ли StringContent огромным?
  2. Или API, который вы используете, выполняет какую-либо обработку, которая поглощает ваши ресурсы?
  3. Есть ли несколько одновременных запросов - например, Вы вызываете API асинхронно или с несколькими потоками в цикле?

Ошибка указывает, что соединение успешно, но что-то не так с API. В моем прошлом опыте я столкнулся с этой проблемой, когда хосту API не хватало памяти и процессора. Некоторые из перечисленных выше предметов могут вызвать это.

Попробуйте вызвать API с параметром пустой строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...