WebClient возвращает ошибку 500 - Ответ WebException сообщает: неподдерживаемый браузер - PullRequest
0 голосов
/ 16 января 2019

Я пытаюсь получить файл CSV с курсами обмена с URL-адреса на веб-сайте банка. Когда я вручную получаю доступ к ссылке в браузере, я могу скачать курсы валют. Даже на компьютере разработчика (Win10, IIS 10) код прекрасно работает для доступа к файлу. Проблема возникает, когда я перемещаю приложение на рабочий сервер (Win2012 R2, IIS 8.5).

Ответ WebException: <!DOCTYPE html> <html class="ltr" dir="ltr" lang="sk"><head> <title>Nepodporovaný prehliadač - ČSOB</title> <meta content="text/html; charset=UTF-8" http-equiv="content-type"> <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAF... и так продолжается - около 65 000 символов.

Nepodporovaný prehliadač = неподдерживаемый браузер.

Я попытался настроить пользовательский агент, как предложено здесь: .net webclient возвращает ошибку 500, но URL в браузере в порядке :

WebClient client = new WebClient();

client.Headers["User-Agent"] = "Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)";

Исключение все еще возникает, даже если пользовательский агент установлен таким образом.

Я попытался использовать WebRequest вместо WebClient (как предложено здесь: Как получить содержимое из файла по этому URL-адресу? ), но то же исключение происходит с ошибкой 500 и Response в WebException, говорящих как неподдерживаемые браузер.

URL, к которому я пытаюсь получить доступ: https://www.csob.sk/delegate/getExchangeRatesExport?EXPORT_TYPE=CSV&DISPLAY=CURRENCY&DATE=2019011607

Все методы, которые я пробовал, отлично работают при разработке, но не работают. Код WebClient отлично работал на рабочем сервере в течение года до вчерашнего дня - возможно, банк что-то изменил. Любая помощь будет высоко ценится.

...