Как установить Javascript как включенный при использовании DefaultHttpClient? - PullRequest
0 голосов
/ 09 ноября 2010

Я пытаюсь использовать DefaultHttpClient для входа на xbox.com. Я понимаю, что вы не можете войти в систему без посещения http://login.live.com,, поэтому я собирался отправить форму на этой странице, а затем использовать файлы cookie при любых запросах к xbox.com.

Проблема в том, что запрос чего-либо с live.com с использованием DefaultHttpClient возвращает следующее сообщение.

Windows Live ID требует JavaScript для входа. Этот веб-браузер либо не поддерживает JavaScript, либо скрипты блокируются.

Как мне сказать DefaultHttpClient, чтобы сообщить серверу, что javascript доступен для использования? Я попытался просмотреть параметры по умолчанию, а также добавить его в качестве объекта параметра, но не вижу, что мне нужно сделать.

Ответы [ 3 ]

0 голосов
/ 09 ноября 2010

Причина, по которой это происходит, заключается в том, что эта строка HTML анализируется с live:

<noscript><meta http-equiv="Refresh" content="0; URL=http://login.live.com/jsDisabled.srf?mkt=EN-US&lc=1033"/>Windows Live ID requires JavaScript to sign in. This web browser either does not support JavaScript, or scripts are being blocked.<br /><br />To find out whether your browser supports JavaScript, or to allow scripts, see the browser's online help.</noscript>

Используется для перенаправления, если на вашем клиенте не включен JavaScript (и, следовательно, он будет анализировать <noscript> теги.)

Вы можете попытаться использовать менее интеллектуальную библиотеку HTTP, которая не выполняет синтаксический анализ содержимого, но вместо этого просто выполняет передачу и оставляет анализ для вас.

0 голосов
/ 25 февраля 2013
Windows Live ID требует JavaScript для входа. Этот веб-браузер либо не поддерживает JavaScript, либо скрипты блокируются.

Чтобы узнать, поддерживает ли ваш браузер JavaScript или разрешить скрипты, посетите веб-браузер в Интернете. Помогите.
0 голосов
/ 09 ноября 2010

Используйте Wireshark , чтобы отслеживать связь, используя браузер и вашу программу, и искать различия.Трудно сказать, что именно ищет live.com/xbox.com, но, скорее всего, для получения реального контента используется некоторый код AJAX-y.

...