c# Ошибка загрузки изображения веб-клиента - PullRequest
0 голосов
/ 09 июля 2020

Мы обновили windows server 2012 до windows server 2019. Я использую веб-клиент для загрузки изображений во время сеанса пользователя. Используется для идеальной работы и работает локально при запуске. Когда я перемещаю исходный код на windows сервер 2019, он не работает со стандартным Базовое соединение было закрыто:

Использование. Net 4.6 Использование протокола безопасности Tls12. Я очень озадачен тем, что вызывает проблему

                ServicePointManager.Expect100Continue = false;
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
                using (var web_client = new WebClient())
                {
                web_client.DownloadFile(file_url, download_file_path_with_name);
                }    

Есть ли у кого-нибудь другие предложения. Я пробовал с Exter100Continue = true с теми же результатами.

1 Ответ

3 голосов
/ 09 июля 2020

С 2012 по 2019 год в версиях и наборах шифров произошли большие изменения.

Во-первых: я бы рекомендовал вам просто позволить ОС решать, какой протокол безопасности использовать (она будет согласовывать версию TLS и набор шифров с сервером, на котором размещено ваше изображение). Вот хорошая статья о версиях TLS и NET версиях и версиях ОС

Во-вторых: я бы запустил что-то вроде Fiddler локально на вашем сервере, чтобы посмотреть, где веб-запрос не работает (я предполагаю, что рукопожатие TLS не удается). Fiddler предоставит более подробную информацию о ваших веб-запросах на уровне пакетов.

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