Я пытаюсь создать программу, которая входит на сайт и выполняет некоторые автоматизированные действия. Я использую HttpClient 4.0.1 и использую это для начала: http://hc.apache.org/httpcomponents-client/primer.html.
На этом конкретном сайте файлы cookie устанавливаются не через заголовок «set-cookie», а в javascript.
Пока я не могу войти в систему.
Я пробовал следующие вещи:
- добавить заголовки вручную для всех заголовков запросов, которые появляются в firebug
NameValuePair[] data = {
new BasicNameValuePair("Host",host),
new BasicNameValuePair("User-Agent"," Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7"),
new BasicNameValuePair("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"),
new BasicNameValuePair("Accept-Language","en-us,en;q=0.5"),
new BasicNameValuePair("Accept-Encoding","gzip,deflate"),
new BasicNameValuePair("Accept-Charset","ISO-8859-1,utf-8;q=0.7,*;q=0.7"),
new BasicNameValuePair("Keep-Alive","300"),
new BasicNameValuePair("Connection","keep-alive"),
new BasicNameValuePair("Referer",referer),
new BasicNameValuePair("Cookie",cookiestr)
};
for(NameValuePair pair : data){
loginPost.addHeader(pair.getName(),pair.getValue());
}
- создание BasicClientCookies и настройка с использованием setCookieStore. К сожалению, я не могу понять, как проверить, действительно ли отправляются файлы cookie. также есть ли способ проверить, какие другие автоматические параметры отправляются? (например, какой браузер эмулируется и т. д.).
Я получаю ответ: HTTP / 1.1 417 Ошибка ожидания
Я все еще новичок в этом вопросе, так кто-нибудь знает, что это за проблема? Если нет, я выложу более подробную информацию, код и сайт.