Проблема с веб-клиентом .net - PullRequest
0 голосов
/ 29 июля 2011

Я пытаюсь получить доступ к веб-сайту через веб-клиента в .net, но получаю сообщение об ошибке, в котором говорится: "Microsoft Online Services требует JavaScript для входа в систему. Этот веб-браузер либо не поддерживает JavaScript, либо сценарии блокируются."

Вот код, который я использую для доступа к сайту:

string url = "myUrl";
WebClient client = new WebClient();
client.Headers.Add("user-agent", "Mozilla/5.0 (Windows NT 6.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1");
client.Credentials = new NetworkCredential("username", "Password");          
string lines = client.DownloadString(url);   

Любая помощь приветствуется. Должен ли я сменить пользовательский агент или попробовать что-то еще? Заранее спасибо, Лазиале

1 Ответ

1 голос
/ 29 июля 2011

Возможно, вы захотите использовать System.Windows.Forms.WebBrowser для анализа Javascript.
Веб-клиент только пытается загрузить файл.
Javascripts не обрабатываются на сервере ... Они обрабатываются на клиенте.

Итак, с помощью WebClient загрузите файл URL в файл на компьютере и используйте WebBrowser до Navigate для загруженного файла. Он проанализирует Javascripts и другие вещи, и после завершения (для этого должно быть событие) вы можете извлечь (проанализированный) контент и работать с ним.

Весь этот «вы должны включить Javascript» скрыт Javascript.
Это не тот сервер, который его обнаруживает.

...