0

У меня есть URL:Хотите получить HTML содержание Microsoft Live Вход страницы

https://login.live.com/login.srf?wa=wsignin1.0&wtrealm=http%3a%2f%2fcorp.sts.microsoft.com&wctx=7b4cd04b-7dc2-4880-9f77-20c8c6ef64c4&wct=2013-03-11T06%3a54%3a42Z&whr=uri%3aWindowsLiveID.

Я хочу, чтобы получить htmlcotent этой страницы как строки. Мой код выглядит так.

WebClient wc = new WebClient(); 
string html = wc.DownloadString("url"); 

Когда я анализирую содержание в html строке появляется сообщение об ошибке:

Microsoft учетная запись требует JavaScript, чтобы войти в этот веб-браузер не поддерживает JavaScript, или сценарии блокируются. , К узнайте, поддерживает ли ваш браузер JavaScript или разрешает сценарии , см. Онлайн-справку браузера.

+0

Могу ли я узнать, по какой причине вы отказываетесь от веб-страницы? –

+0

В основном, я хочу обходить веб-страницу Microsoft, которая является Live Authenticated. Поэтому я просто запутаюсь, получаю содержимое веб-сайта html. – user2155788

ответ

0

Вы можете установить заголовок User-Agent запрос в какой-то ноу-браузер, который будет обмануть веб-сайт, думая, что он поддерживает JavaScript:

using (WebClient wc = new WebClient()) 
{ 
    client.Headers[HttpRequestHeader.UserAgent] = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.152 Safari/537.22"; 
    string html = wc.DownloadString("https://www.microsoft.com/en-/itacademy/members/default.aspx"); 
} 

Очевидно, что если сайт выполняет некоторые JavaScript задачи, которые они не будут выполняться и вы не можете полагаться на них, потому что WebClient этого не поддерживает.

Если с другой стороны вы пытаетесь пройти аутентификацию против Live ID, я настоятельно рекомендую вам использовать OAuth для этой цели. Вот documentation, в котором объясняется, как интегрировать этот тип аутентификации с Live ID после регистрации вашего приложения в качестве полагающейся стороны.

+0

Привет, Дарин Спасибо за ответ. Я интегрировал API Javascript Windows Live в asp.net mvc3, и я могу выполнить проверку подлинности. Но я просто пытаюсь получить содержимое веб-страницы. Я попробовал установить заголовки в объекте Request, но результат тот же, что я упомянул выше. Я также использовал httpwebrequest. – user2155788

 Смежные вопросы

  • Нет связанных вопросов^_^